diff --git a/.flake8 b/.flake8 deleted file mode 100644 index 29db16ac..00000000 --- a/.flake8 +++ /dev/null @@ -1,4 +0,0 @@ -[flake8] -max-line-length = 120 -extend-ignore = E203 -per-file-ignores = __init__.py:F401 diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 0b419161..e390f3f5 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,7 @@ -# Ping the DevEx team for reviews on every PR -* @EasyPost/devex +## These are the standard rules for all EasyPost public repositories. +## + +* @EasyPost/dev-tools @EasyPost/easypost-public-maintainers + +# The devtools team owns the codeowners file, this is for auditing purposes +.github/CODEOWNERS @easypost/dev-tools diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3191e3de..328ceaf3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,52 +10,54 @@ jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: set up python - uses: actions/setup-python@v4 + - uses: actions/checkout@v6 + - uses: extractions/setup-just@v3 + - uses: astral-sh/setup-uv@v7 + - uses: actions/setup-python@v6 with: - python-version: '3.11' + python-version: '3.14' - name: Install Dependencies - run: make install - - name: Check format - run: make format-check + run: just install + - name: Lint + run: just lint run-tests: runs-on: ubuntu-latest strategy: matrix: - pythonversion: ['3.7', '3.8', '3.9', '3.10', '3.11'] + # vcrpy is not compatible with Python 3.14 yet so we cannot test against it + pythonversion: ['3.9', '3.10', '3.11', '3.12', '3.13'] steps: - - uses: actions/checkout@v3 - - name: set up python - uses: actions/setup-python@v4 + - uses: actions/checkout@v6 + - uses: extractions/setup-just@v3 + - uses: astral-sh/setup-uv@v7 + - uses: actions/setup-python@v6 with: python-version: ${{ matrix.pythonversion }} - name: Install Dependencies - run: make install + run: just install - name: Run Tests - run: EASYPOST_TEST_API_KEY=123 EASYPOST_PROD_API_KEY=123 make coverage - - name: Coveralls + run: EASYPOST_TEST_API_KEY=123 EASYPOST_PROD_API_KEY=123 just coverage + - name: Coverage if: github.ref == 'refs/heads/master' - uses: coverallsapp/github-action@master + uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0 with: - github-token: ${{ secrets.GITHUB_TOKEN }} - path-to-lcov: "./coverage.lcov" + token: ${{ secrets.CODECOV_TOKEN }} - name: Run security analysis - run: make scan + run: just scan docs: if: github.ref == 'refs/heads/master' runs-on: ubuntu-latest steps: - - name: Checkout Repository - uses: actions/checkout@v3 - - name: set up Python - uses: actions/setup-python@v4 + - uses: actions/checkout@v6 + - uses: extractions/setup-just@v3 + - uses: astral-sh/setup-uv@v7 + - uses: actions/setup-python@v6 with: - python-version: '3.11' + python-version: '3.14' - name: Install Dependencies - run: make install + run: just install - name: Generate Docs - run: make docs + run: just docs - name: Deploy Docs uses: peaceiris/actions-gh-pages@v3 with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..50790100 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,28 @@ +name: release + +on: + release: + types: [published] + workflow_dispatch: + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - uses: extractions/setup-just@v3 + - uses: astral-sh/setup-uv@v7 + - uses: actions/setup-python@v6 + with: + python-version: '3.14' + - name: Build package + run: just install build + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + password: ${{ secrets.PYPI_API_KEY }} + - name: Upload assets to release + uses: AButler/upload-release-assets@v3.0.1 + with: + files: 'dist/*' + repo-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md index b8135b32..70177632 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,140 @@ # CHANGELOG +## Next Release + +- Removes the deprecated, unusable `add_credit_card` function + - Stripe has disabled the ability to pass plain credit card details over the wire and now requires using [Stripe.js/Elements/Checkout](https://support.stripe.com/questions/card-tokenization-restrictions-using-publishable-keys). Follow the [Decentralized (EasyPost-Manage Billing) Guide](https://docs.easypost.com/guides/get-started-with-forge/easypost-managed-billing-guide#referralcustomer-billing-management) for more details on the new flow to use. + - Makes `referral_customer.retrieve_easypost_stripe_api_key` public to help facilitate adding credit cards using Stripe.js +- Adds support for `FedexDefaultAccount`, `GofoWalletAccount`, `UpsDapAccount`, `UniUniWalletAccount`, and `VehoWalletAccount` by properly routing carrier-account create requests to the `/carrier_accounts/open` endpoint. + +## v10.7.0 (2026-06-25) + +- Adds `params` to `request_pin` ensuring users can pass `easypost_details` to the call. + +## v10.6.0 (2026-02-25) + +- Adds generic `make_api_call` function + +## v10.5.1 (2026-02-24) + +- Corrects the return type of `carrier_account.all()` (closes #386) + +## v10.5.0 (2026-02-20) + +- Adds the following functions: + - `fedex_registration.register_address` + - `fedex_registration.request_pin` + - `fedex_registration.validate_pin` + - `fedex_registration.submit_invoice` + +## v10.4.0 (2026-02-03) + +- Adds the following functions usable by child and referral customer users: + - `api_key.create` + - `api_key.delete` + - `api_key.enable` + - `api_key.disable` +- Adds a `tracker.delete` function + +## v10.3.0 (2025-11-24) + +- Adds the following functions: + - `embeddable.create_session` + - `customer_portal.create_account_link` + +## v10.2.0 (2025-11-10) + +- Adds `UspsShipAccount` support to the create carrier method +- Adds `tracker.retrieve_batch` function +- Adds `verify_carrier` address param + +## v10.1.0 (2025-06-18) + +- Adds the following functions + - `shipment.create_and_buy_luma` + - `shipment.buy_luma` + - `luma.get_promise` +- Fixes `tracking_codes` filter when retrieving all tracking codes + +## v10.0.1 (2025-05-27) + +- Corrects the endpoint used for creating/updating UPS accounts + +## v10.0.0 (2025-04-28) + +See our [Upgrade Guide](UPGRADE_GUIDE.md#upgrading-from-9x-to-100) for more details. + +- Drops support for Python 3.7 and 3.8 +- Adds the following functions to assist ReferralCustomers add credit cards and bank accounts: + - `BetaReferralCustomerService.create_credit_card_client_secret` + - `BetaReferralCustomerService.create_bank_account_client_secret` + - `ReferralCustomerService.add_credit_card_from_stripe` + - `ReferralCustomerService.add_bank_account_from_stripe` +- Routes `AmazonShippingAccount` create requests to the new `/register_oauth` endpoint +- Fixes the payload wrapping for updating a webhook +- Removes deprecated `user.all_api_keys` and `user.api_keys`, use `api_key.all` and `api_key.retrieve_api_keys_for_user` respectively +- Bumps all dev dependencies + +## v9.5.0 (2024-10-24) + +- Adds `tracking_codes` as a parameter of the `all` method on the TrackerService +- Removes the deprecated `create_list` tracker endpoint function as it is no longer available via API + +## v9.4.1 (2024-08-09) + +- Fix `get_next_page_of_children` function for User service with correct filter key + +## v9.4.0 (2024-07-24) + +- Adds new `Claim` service for filing claims on EasyPost shipments and insurances + +## v9.3.0 (2024-07-12) + +- Adds new `shipment.recommend_ship_date`, `smartrate.recommend_ship_date`, and `smartrate.estimate_delivery_date` functions +- Routes `UpsAccount`, `UpsMailInnovationsAccount`, and `UpsSurepostAccount` create/update requests to the new `/ups_oauth_registrations` endpoint + - Starting `2024-08-05`, UPS accounts will require a new payload to register or update. See [UPS OAuth 2.0 Update](https://support.easypost.com/hc/en-us/articles/26635027512717-UPS-OAuth-2-0-Update?utm_medium=email&_hsenc=p2ANqtz-96MmFtWICOzy9sKRbbcZSiMovZSrY3MSX1_bgY9N3f9yLVfWQdLhjAGq-SmNcOnDIS6GYhZ0OApjDBrGkKyLLMx1z6_TFOVp6-wllhEFQINrkuRuc&_hsmi=313130292&utm_content=313130292&utm_source=hs_email) for more details + +## v9.2.0 (2024-04-10) + +- Fix payment method funding and deletion failures due to undetermined payment method type +- Adds `refund` function in Insurance service for requesting a refund for a standalone insurance + +## v9.1.0 (2024-01-08) + +- Adds `all_children` function to the User service for retrieving paginated lists of children +- Adds `get_next_page_of_children` function to User service to get next paginated list of children + +## v9.0.1 (2023-12-20) + +- Corrects the return type of `regenerate_rates` + +## v9.0.0 (2023-12-06) + +See our [Upgrade Guide](UPGRADE_GUIDE.md#upgrading-from-8x-to-90) for more details. + +- Removes `with_carbon_offset` parameter from `create`, `buy`, and `regenerate_rates` functions of the Shipment service as EasyPost now offers Carbon Neutral shipments by default for free +- Removes the undocumented `create_and_buy` function from the `Batch` service. The proper usage is to create a batch first and buy it separately +- Removes the `beta_carrier_metadata` service as it is deprecated, please use the `carrier_metadata` GA service instead + +## v8.2.1 (2023-10-30) + +- Fixes a bug where `get_next_page` functions threw an error, preventing users from retrieving the final page of results + +## v8.2.0 (2023-10-11) + +- Add dedicated API Key-related service, available via the `api_keys` property of a client + - NOTE: Please note the naming. The `api_key` property of a client is the currently-used API key string, while the `api_keys` property is the service for managing API keys. +- Migrated API Key-related functionality to `api_keys` service, deprecated old methods in `user` service + +## v8.1.1 (2023-09-05) + +- Fix endpoint for creating a FedEx Smartpost carrier account + +## v8.1.0 (2023-07-28) + +- Adds new `RequestHook` and `ResponseHook` events. (un)subscribe to them with the new `subscribe_to_request_hook`, `subscribe_to_response_hook`, `unsubscribe_from_request_hook`, or `unsubscribe_from_response_hook` methods of an `EasyPostClient` +- Maps 400 status codes to new `BadRequestError` class + ## v8.0.0 (2023-06-06) See our [Upgrade Guide](UPGRADE_GUIDE.md#upgrading-from-7x-to-80) for more details. diff --git a/Makefile b/Makefile deleted file mode 100644 index 7384a10b..00000000 --- a/Makefile +++ /dev/null @@ -1,82 +0,0 @@ -PYTHON_BINARY := python3 -VIRTUAL_ENV := venv -VIRTUAL_BIN := $(VIRTUAL_ENV)/bin -PROJECT_NAME := easypost -TEST_DIR := tests - -## help - Display help about make targets for this Makefile -help: - @cat Makefile | grep '^## ' --color=never | cut -c4- | sed -e "`printf 's/ - /\t- /;'`" | column -s "`printf '\t'`" -t - -## black - Runs the Black Python formatter against the project -black: - $(VIRTUAL_BIN)/black $(PROJECT_NAME)/ $(TEST_DIR)/ - -## black-check - Checks if the project is formatted correctly against the Black rules -black-check: - $(VIRTUAL_BIN)/black $(PROJECT_NAME)/ $(TEST_DIR)/ --check - -## build - Builds the project in preparation for release -build: - $(VIRTUAL_BIN)/python -m build - -## clean - Remove the virtual environment and clear out .pyc files -clean: - rm -rf $(VIRTUAL_ENV) dist/ build/ *.egg-info/ .pytest_cache .mypy_cache - find . -name '*.pyc' -delete - -## coverage - Test the project and generate an HTML coverage report -coverage: - $(VIRTUAL_BIN)/pytest --cov=$(PROJECT_NAME) --cov-branch --cov-report=html --cov-report=lcov --cov-report=term-missing --cov-fail-under=90 - -## docs - Generates docs for the library -docs: - $(VIRTUAL_BIN)/pdoc $(PROJECT_NAME) -o docs - -## format - Runs all formatting tools against the project -format: black isort - -## format-check - Checks if the project is formatted correctly against all formatting rules -format-check: black-check isort-check lint mypy - -## install - Install the project locally -install: - $(PYTHON_BINARY) -m venv $(VIRTUAL_ENV) - $(VIRTUAL_BIN)/pip install -e ."[dev]" - git submodule init - git submodule update - -## isort - Sorts imports throughout the project -isort: - $(VIRTUAL_BIN)/isort $(PROJECT_NAME)/ $(TEST_DIR)/ - -## isort-check - Checks that imports throughout the project are sorted correctly -isort-check: - $(VIRTUAL_BIN)/isort $(PROJECT_NAME)/ $(TEST_DIR)/ --check-only - -## lint - Lint the project -lint: - $(VIRTUAL_BIN)/flake8 $(PROJECT_NAME)/ $(TEST_DIR)/ - -## mypy - Run mypy type checking on the project -mypy: - $(VIRTUAL_BIN)/mypy $(PROJECT_NAME)/ $(TEST_DIR)/ - -## publish - Publish the project to PyPI -publish: - $(VIRTUAL_BIN)/twine upload dist/* - -## release - Cuts a release for the project on GitHub (requires GitHub CLI) -# tag = The associated tag title of the release -release: - gh release create ${tag} dist/* - -## scan - Scans the project for security issues with Bandit -scan: - $(VIRTUAL_BIN)/bandit -r $(PROJECT_NAME) - -## test - Test the project -test: - $(VIRTUAL_BIN)/pytest - -.PHONY: help black black-check build clean coverage docs format format-check install isort isort-check lint mypy publish release scan test diff --git a/README.md b/README.md index 9f372fff..234fc453 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # EasyPost Python Client Library [![CI](https://github.com/EasyPost/easypost-python/workflows/CI/badge.svg)](https://github.com/EasyPost/easypost-python/actions?query=workflow%3ACI) -[![Coverage Status](https://coveralls.io/repos/github/EasyPost/easypost-python/badge.svg)](https://coveralls.io/github/EasyPost/easypost-python) +[![codecov](https://codecov.io/gh/EasyPost/easypost-python/graph/badge.svg?token=SxXsqBjQUb)](https://codecov.io/gh/EasyPost/easypost-python) [![PyPI version](https://badge.fury.io/py/easypost.svg)](https://badge.fury.io/py/easypost) EasyPost, the simple shipping solution. You can sign up for an account at . @@ -62,11 +62,29 @@ bought_shipment = client.shipment.buy(shipment.id, rate=shipment.lowest_rate()) print(bought_shipment) ``` +### HTTP Hooks + +Users can subscribe to HTTP requests and responses via the `RequestHook` and `ResponseHook` objects. To do so, pass a function to the `subscribe_to_request_hook` or `subscribe_to_response_hook` methods of an `EasyPostClient` object: + +```python +def custom_function(**kwargs): + """Pass your code here, data about the request/response is contained within `kwargs`.""" + print(f"Received a request with the status code of: {kwargs.get('http_status')}") + +client = easypost.EasyPostClient(os.getenv('EASYPOST_API_KEY')) + +client.subscribe_to_response_hook(custom_function) + +# Make your API calls here, your custom_function will trigger once a response is received +``` + +You can also unsubscribe your functions in a similar manner by using the `unsubscribe_from_request_hook` and `unsubscribe_from_response_hook` methods of a client object. + ## Documentation -API documentation can be found at: . +API documentation can be found at: . -Library documentation can be found on the web at: or by building them locally via the `make docs` command. +Library documentation can be found on the web at: or by building them locally via the `just docs` command. Upgrading major versions of this project? Refer to the [Upgrade Guide](UPGRADE_GUIDE.md). @@ -80,29 +98,24 @@ For additional support, see our [org-wide support policy](https://github.com/Eas ```bash # Install dependencies -make install +just install # Lint project -make lint - -# Format project -make format +just lint +just lint-fix # Run tests -EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... make test - -# Run test coverage -EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... make coverage +EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... just test +EASYPOST_TEST_API_KEY=123... EASYPOST_PROD_API_KEY=123... just coverage # Run security analysis -make scan +just scan # Generate library documentation -make docs +just docs # Update submodules -git submodule init -git submodule update --remote +just update-examples-submodule ``` ### Testing diff --git a/UPGRADE_GUIDE.md b/UPGRADE_GUIDE.md index b759e37b..db35a06f 100644 --- a/UPGRADE_GUIDE.md +++ b/UPGRADE_GUIDE.md @@ -2,12 +2,71 @@ Use the following guide to assist in the upgrade process of the `easypost-python` library between major versions. +- [Upgrading from 9.x to 10.0](#upgrading-from-9x-to-100) +- [Upgrading from 8.x to 9.0](#upgrading-from-8x-to-90) - [Upgrading from 7.x to 8.0](#upgrading-from-7x-to-80) - [Upgrading from 6.x to 7.0](#upgrading-from-6x-to-70) - [Upgrading from 5.x to 6.0](#upgrading-from-5x-to-60) +## Upgrading from 9.x to 10.0 + +### 10.0 High Impact Changes + +- [Updated Dependencies](#100-updated-dependencies) + +### 10.0 Medium Impact Changes + +- [Deprecations](#100-deprecations) + +### 10.0 Updated Dependencies + +**Python 3.9 Required** + +easypost-python now requires Python 3.9 or greater. + +### 10.0 Deprecations + +*Likelihood of Impact: **Medium*** + +The following deprecated functions have been removed: + +- `user.all_api_keys` (use `api_key.all`) +- `users.api_keys` (use `api_key.retrieve_api_keys_for_user`) + +## Upgrading from 8.x to 9.0 + +**NOTICE:** v9 is deprecated. + +### 9.0 High Impact Changes + +- [Carbon Offset Removed](#90-carbon-offset-removed) + +### 9.0 Low Impact Changes + +- [Create and Buy Batch Function Removed](#90-create-and-buy-batch-function-removed) + +### 9.0 Carbon Offset Removed + +*Likelihood of Impact: **High*** + +EasyPost now offers Carbon Neutral shipments by default for free! Because of this, there is no longer a need to specify if you want to offset the carbon footprint of a shipment. + +The `with_carbon_offset` parameter of the `create`, `buy`, and `regenerate_rates` shipment functions has been removed. + +This is a high-impact change for those using `EndShippers`, as the signature for the `create` and `buy` shipment functions have changed. You will need to inspect these callsites to ensure that the EndShipper parameter is being passed in the correct place. + +### 9.0 Create and Buy Batch Function Removed + +*Likelihood of Impact: **Low*** + +The `create_and_buy` batch endpoint has been deprecated, and the `create_and_buy` Batch service function has been removed. + +The correct procedure is to first create a batch and then purchase it with two separate API calls. + ## Upgrading from 7.x to 8.0 +**NOTICE:** v8 is deprecated. + ### 8.0 High Impact Changes - [Updated Dependencies](#80-updated-dependencies) @@ -23,7 +82,7 @@ Use the following guide to assist in the upgrade process of the `easypost-python - [Beta Namespace Changed](#80-beta-namespace-changed) - [Changed Function Parameter Order and Return Types](#80-changed-function-parameter-order-and-return-types) -## 8.0 Updated Dependencies +### 8.0 Updated Dependencies Likelihood of Impact: High @@ -35,7 +94,7 @@ easypost-python now requires Python 3.7 or greater. All dependencies had minor version bumps. -## 8.0 EasyPostClient +### 8.0 EasyPostClient Likelihood of Impact: High @@ -110,13 +169,13 @@ Occurances of `scanform` are now `scan_form` and `Scanform` are now `ScanForm` t The `primary_or_secondary` parameter name for billing functions is now called `priority` to match the documentation and API. -## 8.0 Beta Namespace Changed +### 8.0 Beta Namespace Changed Likelihood of Impact: Low Previously, the beta namespace was found at `easypost.beta.x` where `x` is the name of your model. Now, the beta namespace is simply prepended to the name of your service: `client.beta_x`. for instance, you can call `client.beta_referral_customer.add_payment_method()`. -## 8.0 Changed Function Parameter Order and Return Types +### 8.0 Changed Function Parameter Order and Return Types Likelihood of Impact: Low @@ -137,7 +196,7 @@ Functions that previously returned `True` now do not return anything as there is - [Removal of `get_rates()` Shipment Method](#70-removal-of-getrates-shipment-method) -## 7.0 Updating Dependencies +### 7.0 Updating Dependencies Likelihood of Impact: High @@ -149,7 +208,7 @@ easypost-python now requires Python 3.6 or greater and has dropped support for P All dependencies had minor version bumps. -## 7.0 `shipment.lowest_rate()` Now Expects a List +### 7.0 `shipment.lowest_rate()` Now Expects a List Previously the `shipment.lowest_rate()` function expected a comma separated string list of filter criteria (carriers and services). These params have been corrected to expect an actual list object. @@ -161,7 +220,7 @@ shipment.lowest_rate(carriers="USPS,FedEx", services="...") shipment.lowest_rate(carriers=["USPS", "FedEx"], services=["..."]) ``` -## 7.0 Removal of `get_rates()` Shipment Method +### 7.0 Removal of `get_rates()` Shipment Method Likelihood of Impact: Medium @@ -176,7 +235,7 @@ The HTTP method used for the `get_rates` endpoint at the API level has changed f - [Updating Dependencies](#60-updating-dependencies) - [JSON Encoded Bodies](#60-json-encoded-bodies) -## 6.0 Updating Dependencies +### 6.0 Updating Dependencies Likelihood of Impact: High @@ -184,7 +243,7 @@ Likelihood of Impact: High Bumps the `requests` library from v1 to v2. -## 6.0 JSON Encoded Bodies +### 6.0 JSON Encoded Bodies Likelihood of Impact: High diff --git a/easypost/constant.py b/easypost/constant.py index 2efea1e5..18a71b29 100644 --- a/easypost/constant.py +++ b/easypost/constant.py @@ -1,6 +1,6 @@ # flake8: noqa # Library version -VERSION = "8.0.0" +VERSION = "10.7.0" VERSION_INFO = [str(number) for number in VERSION.split(".")] # Client defaults @@ -26,12 +26,30 @@ NO_BILLING_ERROR = "Billing has not been setup for this user. Please add a payment method." NO_MORE_PAGES_ERROR = "There are no more pages to retrieve." NO_RATES_ERROR = "No rates found." +NO_USER_FOUND = "No user found with the given id." SEND_STRIPE_DETAILS_ERROR = "Could not send card details to Stripe, please try again later." TIMEOUT_ERROR = "Request timed out." # Internal constants (user's should not use these) _TEST_FAILED_INTENTIONALLY_ERROR = "Test failed intentionally." -_CARRIER_ACCOUNT_TYPES_WITH_CUSTOM_WORKFLOWS = [ - "FedexAccount", - "UpsAccount", -] +_CARRIER_ACCOUNT_CREATE_ENDPOINT_TYPES = { + "/carrier_accounts/open": ( + "FedexDefaultAccount", + "GofoWalletAccount", + "UpsDapAccount", + "UniUniWalletAccount", + "VehoWalletAccount", + ), + "/carrier_accounts/register": ( + "FedexAccount", + "FedexSmartpostAccount", + ), + "/carrier_accounts/register_oauth": ( + "AmazonShippingAccount", + "UpsAccount", + "UpsMailInnovationsAccount", + "UpsSurepostAccount", + "UspsShipAccount", + ), +} +_FILTERS_KEY = "filters" diff --git a/easypost/easypost_client.py b/easypost/easypost_client.py index 3b027d76..026b67bc 100644 --- a/easypost/easypost_client.py +++ b/easypost/easypost_client.py @@ -1,3 +1,5 @@ +from typing import Any + from easypost.constant import ( API_BASE, API_VERSION, @@ -5,20 +7,28 @@ SUPPORT_EMAIL, TIMEOUT, ) +from easypost.easypost_object import convert_to_easypost_object +from easypost.hooks import RequestHook, ResponseHook +from easypost.requestor import RequestMethod, Requestor from easypost.services import ( AddressService, + ApiKeyService, BatchService, - BetaCarrierMetadataService, BetaRateService, BetaReferralCustomerService, BillingService, CarrierAccountService, CarrierMetadataService, + ClaimService, + CustomerPortalService, CustomsInfoService, CustomsItemService, + EmbeddableService, EndShipperService, EventService, + FedExRegistrationService, InsuranceService, + LumaService, OrderService, ParcelService, PickupService, @@ -28,6 +38,7 @@ ReportService, ScanFormService, ShipmentService, + SmartRateService, TrackerService, UserService, WebhookService, @@ -50,18 +61,23 @@ def __init__( # Services self.address = AddressService(self) + self.api_keys = ApiKeyService(self) self.batch = BatchService(self) - self.beta_carrier_metadata = BetaCarrierMetadataService(self) self.beta_rate = BetaRateService(self) self.beta_referral_customer = BetaReferralCustomerService(self) self.billing = BillingService(self) self.carrier_account = CarrierAccountService(self) self.carrier_metadata = CarrierMetadataService(self) + self.claim = ClaimService(self) + self.customer_portal = CustomerPortalService(self) self.customs_info = CustomsInfoService(self) self.customs_item = CustomsItemService(self) + self.embeddable = EmbeddableService(self) self.end_shipper = EndShipperService(self) self.event = EventService(self) + self.fedex_registration = FedExRegistrationService(self) self.insurance = InsuranceService(self) + self.luma = LumaService(self) self.order = OrderService(self) self.parcel = ParcelService(self) self.rate = RateService(self) @@ -71,10 +87,15 @@ def __init__( self.report = ReportService(self) self.scan_form = ScanFormService(self) self.shipment = ShipmentService(self) + self.smart_rate = SmartRateService(self) self.tracker = TrackerService(self) self.user = UserService(self) self.webhook = WebhookService(self) + # Hooks + self._request_hook = RequestHook() + self._response_hook = ResponseHook() + # use urlfetch as request_lib on google app engine, otherwise use requests self._request_lib = None try: @@ -105,3 +126,30 @@ def __init__( else: if major_version < 1: raise ImportError(INVALID_REQUESTS_VERSION_ERROR.format(SUPPORT_EMAIL)) + + def subscribe_to_request_hook(self, function): + """Subscribe functions to run when a request occurs.""" + self._request_hook += function + + def unsubscribe_from_request_hook(self, function): + """Unsubscribe functions from running when a request occurs.""" + self._request_hook -= function + + def subscribe_to_response_hook(self, function): + """Subscribe functions to run when a response occurs.""" + self._response_hook += function + + def unsubscribe_from_response_hook(self, function): + """Unsubscribe functions from running when a response occurs.""" + self._response_hook -= function + + def make_api_call(self, method: RequestMethod, endpoint: str, params: dict[str, Any]) -> dict[str, Any]: + """Make an API call to the EasyPost API. + + This public, generic interface is useful for making arbitrary API calls to the EasyPost API that + are not yet supported by the client library's services. When possible, the service for your use case + should be used instead as it provides a more convenient and higher-level interface depending on the endpoint. + """ + response = Requestor(self).request(method=method, url=endpoint, params=params) + + return convert_to_easypost_object(response=response) diff --git a/easypost/easypost_object.py b/easypost/easypost_object.py index 61bb09d5..97ec9147 100644 --- a/easypost/easypost_object.py +++ b/easypost/easypost_object.py @@ -3,21 +3,19 @@ import re from typing import ( Any, - Dict, - List, Optional, ) from easypost.constant import NO_ATTRIBUTE_ERROR - -EASYPOST_OBJECT_ID_PREFIX_TO_CLASS_NAME_MAP: Dict[str, Any] = { +EASYPOST_OBJECT_ID_PREFIX_TO_CLASS_NAME_MAP: dict[str, Any] = { "adr": "Address", "ak": "ApiKey", "batch": "Batch", "brd": "Brand", "ca": "CarrierAccount", "cfrep": "Report", + "clm": "Claim", "cstinfo": "CustomsInfo", "cstitem": "CustomsItem", "es": "EndShipper", @@ -43,7 +41,7 @@ "user": "User", } -OBJECT_CLASS_NAME_OVERRIDES: Dict[str, Any] = { +OBJECT_CLASS_NAME_OVERRIDES: dict[str, Any] = { "CashFlowReport": "Report", "PaymentLogReport": "Report", "RefundReport": "Report", @@ -54,7 +52,7 @@ def convert_to_easypost_object( - response: Dict[str, Any], + response: dict[str, Any], parent: object = None, name: Optional[str] = None, ): @@ -74,7 +72,7 @@ def convert_to_easypost_object( # Dynamically import class models due to circular imports of EasyPostObject class_model = ( getattr( - importlib.import_module(f'easypost.models.{re.sub(r"(? None: setattr(self, k, v) @property - def keys(self) -> List[str]: + def keys(self) -> list[str]: return self._values.keys() @property - def values(self) -> List[Any]: + def values(self) -> list[Any]: return self._values.keys() @classmethod def construct_from( cls, - values: Dict[str, Any], + values: dict[str, Any], parent: object = None, name: Optional[str] = None, ) -> object: @@ -166,7 +164,7 @@ def construct_from( return instance - def convert_each_value(self, values: Dict[str, Any]) -> None: + def convert_each_value(self, values: dict[str, Any]) -> None: """Convert each value of a response into an EasyPostObject.""" for k, v in sorted(values.items()): if k == "id" and self.id != v: @@ -185,7 +183,12 @@ def __repr__(self) -> str: json_string = json.dumps(obj=self.to_dict(), sort_keys=True, indent=2, cls=EasyPostObjectEncoder) - return "<%s%s at %s> JSON: %s" % (type(self).__name__, type_string, hex(id(self)), json_string) + return "<%s%s at %s> JSON: %s" % ( + type(self).__name__, + type_string, + hex(id(self)), + json_string, + ) def __str__(self) -> str: return self.to_json(indent=2) @@ -199,7 +202,7 @@ def to_json(self, indent: Optional[int] = None) -> str: """Convert current object to json string.""" return json.dumps(obj=self.to_dict(), sort_keys=True, indent=indent, cls=EasyPostObjectEncoder) - def to_dict(self) -> Dict[str, Any]: + def to_dict(self) -> dict[str, Any]: """Convert current object to a dict.""" def _serialize(o): diff --git a/easypost/errors/api/__init__.py b/easypost/errors/api/__init__.py index 25a17f58..2e05d262 100644 --- a/easypost/errors/api/__init__.py +++ b/easypost/errors/api/__init__.py @@ -1,5 +1,6 @@ # flake8: noqa from easypost.errors.api.api_error import ApiError +from easypost.errors.api.bad_request_error import BadRequestError from easypost.errors.api.encoding_error import EncodingError from easypost.errors.api.external_api_error import ExternalApiError from easypost.errors.api.forbidden_error import ForbiddenError diff --git a/easypost/errors/api/api_error.py b/easypost/errors/api/api_error.py index 78e08f3c..e8c75db7 100644 --- a/easypost/errors/api/api_error.py +++ b/easypost/errors/api/api_error.py @@ -1,8 +1,6 @@ import json from typing import ( Any, - Dict, - List, Optional, Union, ) @@ -16,15 +14,15 @@ class ApiError(EasyPostError): def __init__( self, message: Union[ - Dict[str, Any], list, str + dict[str, Any], list, str ], # message should be a string but can sometimes incorrectly come back as a list or object - errors: Optional[List[str]] = None, + errors: Optional[list[str]] = None, code: Optional[str] = None, http_status: Optional[int] = None, http_body: Optional[Union[str, bytes]] = None, ): super().__init__(message) # type: ignore - message_list: List[str] = [] + message_list: list[str] = [] self._traverse_json_element(message, message_list) self.message = ", ".join(message_list) self.errors = errors @@ -54,8 +52,8 @@ def __init__( def _traverse_json_element( self, - error_message: Optional[Union[Dict[str, Any], list, str]], - messages_list: List[str], + error_message: Optional[Union[dict[str, Any], list, str]], + messages_list: list[str], ) -> None: """Recursively traverses a JSON object or array and extracts error messages as strings. Adds the extracted messages to the specified messages_list array. diff --git a/easypost/errors/api/bad_request_error.py b/easypost/errors/api/bad_request_error.py new file mode 100644 index 00000000..259108a9 --- /dev/null +++ b/easypost/errors/api/bad_request_error.py @@ -0,0 +1,5 @@ +from easypost.errors.api.api_error import ApiError + + +class BadRequestError(ApiError): + pass diff --git a/easypost/hooks/__init__.py b/easypost/hooks/__init__.py new file mode 100644 index 00000000..b1c16e07 --- /dev/null +++ b/easypost/hooks/__init__.py @@ -0,0 +1,4 @@ +# flake8: noqa +from easypost.hooks.event_hook import EventHook +from easypost.hooks.request_hook import RequestHook +from easypost.hooks.response_hook import ResponseHook diff --git a/easypost/hooks/event_hook.py b/easypost/hooks/event_hook.py new file mode 100644 index 00000000..17522d26 --- /dev/null +++ b/easypost/hooks/event_hook.py @@ -0,0 +1,17 @@ +class EventHook: + """The parent event that occurs when a hook is triggered.""" + + def __init__(self): + self._event_handlers = [] + + def __iadd__(self, handler): + self._event_handlers.append(handler) + return self + + def __isub__(self, handler): + self._event_handlers.remove(handler) + return self + + def __call__(self, *args, **kwargs): + for event_handler in self._event_handlers: + event_handler(*args, **kwargs) diff --git a/easypost/hooks/request_hook.py b/easypost/hooks/request_hook.py new file mode 100644 index 00000000..99bca31d --- /dev/null +++ b/easypost/hooks/request_hook.py @@ -0,0 +1,7 @@ +from easypost.hooks import EventHook + + +class RequestHook(EventHook): + """An event that gets triggered when an HTTP request begins.""" + + pass diff --git a/easypost/hooks/response_hook.py b/easypost/hooks/response_hook.py new file mode 100644 index 00000000..439b2058 --- /dev/null +++ b/easypost/hooks/response_hook.py @@ -0,0 +1,7 @@ +from easypost.hooks import EventHook + + +class ResponseHook(EventHook): + """An event that gets triggered when an HTTP response is returned.""" + + pass diff --git a/easypost/models/__init__.py b/easypost/models/__init__.py index 79320a7d..9df262ba 100644 --- a/easypost/models/__init__.py +++ b/easypost/models/__init__.py @@ -5,6 +5,7 @@ from easypost.models.billing import Billing from easypost.models.brand import Brand from easypost.models.carrier_account import CarrierAccount +from easypost.models.claim import Claim from easypost.models.customs_info import CustomsInfo from easypost.models.customs_item import CustomsItem from easypost.models.end_shipper import EndShipper diff --git a/easypost/models/claim.py b/easypost/models/claim.py new file mode 100644 index 00000000..c0c6dd69 --- /dev/null +++ b/easypost/models/claim.py @@ -0,0 +1,5 @@ +from easypost.easypost_object import EasyPostObject + + +class Claim(EasyPostObject): + pass diff --git a/easypost/models/order.py b/easypost/models/order.py index 538ed99b..ac97d2fe 100644 --- a/easypost/models/order.py +++ b/easypost/models/order.py @@ -1,5 +1,4 @@ from typing import ( - List, Optional, ) @@ -9,7 +8,7 @@ class Order(EasyPostObject): - def lowest_rate(self, carriers: Optional[List[str]] = None, services: Optional[List[str]] = None) -> Rate: + def lowest_rate(self, carriers: Optional[list[str]] = None, services: Optional[list[str]] = None) -> Rate: """Get the lowest rate of this Order.""" lowest_rate = get_lowest_object_rate(self, carriers, services) diff --git a/easypost/models/pickup.py b/easypost/models/pickup.py index a54175b7..f91ba9af 100644 --- a/easypost/models/pickup.py +++ b/easypost/models/pickup.py @@ -1,5 +1,4 @@ from typing import ( - List, Optional, ) @@ -9,7 +8,7 @@ class Pickup(EasyPostObject): - def lowest_rate(self, carriers: Optional[List[str]] = None, services: Optional[List[str]] = None) -> Rate: + def lowest_rate(self, carriers: Optional[list[str]] = None, services: Optional[list[str]] = None) -> Rate: """Get the lowest rate of this Pickup.""" lowest_rate = get_lowest_object_rate(self, carriers, services, "pickup_rates") diff --git a/easypost/models/shipment.py b/easypost/models/shipment.py index c8f9bef3..5e71b34d 100644 --- a/easypost/models/shipment.py +++ b/easypost/models/shipment.py @@ -1,5 +1,4 @@ from typing import ( - List, Optional, ) @@ -9,7 +8,7 @@ class Shipment(EasyPostObject): - def lowest_rate(self, carriers: Optional[List[str]] = None, services: Optional[List[str]] = None) -> Rate: + def lowest_rate(self, carriers: Optional[list[str]] = None, services: Optional[list[str]] = None) -> Rate: """Get the lowest rate of this shipment.""" lowest_rate = get_lowest_object_rate(self, carriers, services) diff --git a/easypost/requestor.py b/easypost/requestor.py index c95f6455..4f024f2f 100644 --- a/easypost/requestor.py +++ b/easypost/requestor.py @@ -2,12 +2,11 @@ import json import platform import time +import uuid from enum import Enum from json import JSONDecodeError from typing import ( Any, - Dict, - List, Optional, Tuple, Union, @@ -29,6 +28,7 @@ ) from easypost.easypost_object import EasyPostObject from easypost.errors import ( + BadRequestError, EasyPostError, ForbiddenError, GatewayTimeoutError, @@ -47,8 +47,8 @@ UnknownApiError, ) - -STATUS_CODE_TO_ERROR_MAPPING: Dict[int, Any] = { +STATUS_CODE_TO_ERROR_MAPPING: dict[int, Any] = { + 400: BadRequestError, 401: UnauthorizedError, 402: PaymentError, 403: ForbiddenError, @@ -76,7 +76,7 @@ def __init__(self, client): self._client = client @classmethod - def _objects_to_ids(cls, param: Dict[str, Any]) -> Dict[str, Any]: + def _objects_to_ids(cls, param: dict[str, Any]) -> dict[str, Any]: """If providing an object as a parameter to another object, only pass along the ID so the API will use the object reference correctly. """ @@ -95,10 +95,10 @@ def _objects_to_ids(cls, param: Dict[str, Any]) -> Dict[str, Any]: @staticmethod def form_encode_params( - data: Dict[str, Any], - parent_keys: Optional[List[str]] = None, - parent_dict: Optional[Dict[str, Any]] = None, - ) -> Dict: + data: dict[str, Any], + parent_keys: Optional[list[str]] = None, + parent_dict: Optional[dict[str, Any]] = None, + ) -> dict: """Form-encode a multi-layer dictionary to a one-layer dictionary.""" result = parent_dict or {} keys = parent_keys or [] @@ -114,7 +114,7 @@ def form_encode_params( return result @staticmethod - def _build_dict_key(keys: List[str]) -> str: + def _build_dict_key(keys: list[str]) -> str: """Build a dict key from a list of keys. Example: [code, number] -> code[number] """ @@ -129,9 +129,9 @@ def request( self, method: RequestMethod, url: str, - params: Optional[Dict[str, Any]] = None, + params: Optional[dict[str, Any]] = None, beta: bool = False, - ) -> Dict[str, Any]: + ) -> dict[str, Any]: """Make a request to the EasyPost API.""" if params is None: params = {} @@ -151,7 +151,7 @@ def request_raw( self, method: RequestMethod, url: str, - params: Optional[Dict[str, Any]] = None, + params: Optional[dict[str, Any]] = None, beta: bool = False, ) -> Tuple[str, int]: """Internal logic required to make a request to the EasyPost API.""" @@ -201,20 +201,43 @@ def request_raw( "User-Agent": user_agent, } + request_uuid = uuid.uuid4() + request_timestamp = datetime.datetime.now(datetime.timezone.utc) + self._client._request_hook( + method=method, + path=abs_url, + headers=headers, + request_body=params, + request_timestamp=request_timestamp, + request_uuid=request_uuid, + ) + if self._client._request_lib == "urlfetch": - http_body, http_status = self.urlfetch_request( + http_body, http_status, http_headers = self.urlfetch_request( method=method, abs_url=abs_url, headers=headers, params=params ) elif self._client._request_lib == "requests": - http_body, http_status = self.requests_request( + http_body, http_status, http_headers = self.requests_request( method=method, abs_url=abs_url, headers=headers, params=params ) else: raise EasyPostError(INVALID_REQUEST_LIB_ERROR.format(self._client._request_lib, SUPPORT_EMAIL)) + response_timestamp = datetime.datetime.now(datetime.timezone.utc) + self._client._response_hook( + http_status=http_status, + method=method, + path=abs_url, + headers=http_headers, + response_body=http_body, + request_timestamp=request_timestamp, + response_timestamp=response_timestamp, + request_uuid=request_uuid, + ) + return http_body, http_status - def interpret_response(self, http_body: str, http_status: int) -> Dict[str, Any]: + def interpret_response(self, http_body: str, http_status: int) -> dict[str, Any]: """Interpret the response body we receive from the API.""" if http_status == 204: # HTTP 204 does not have any response body and we can just return here @@ -234,9 +257,9 @@ def requests_request( self, method: RequestMethod, abs_url: str, - headers: Dict[str, Any], - params: Dict[str, Any], - ) -> Tuple[str, int]: + headers: dict[str, Any], + params: dict[str, Any], + ) -> Tuple[str, int, dict[str, Any]]: """Make a request by using the `request` library.""" if method in [RequestMethod.GET, RequestMethod.DELETE]: url_params = params @@ -262,20 +285,21 @@ def requests_request( ) http_body = result.text http_status = result.status_code + http_headers = result.headers except requests.exceptions.Timeout: raise TimeoutError(TIMEOUT_ERROR) except Exception as e: raise HttpError(COMMUNICATION_ERROR.format(SUPPORT_EMAIL, e)) - return http_body, http_status + return http_body, http_status, http_headers def urlfetch_request( self, method: RequestMethod, abs_url: str, - headers: Dict[str, Any], - params: Dict[str, Any], - ) -> Tuple[str, int]: + headers: dict[str, Any], + params: dict[str, Any], + ) -> Tuple[str, int, dict[str, Any]]: """Make a request by using the `urlfetch` library.""" fetch_args = { "method": method.value, @@ -301,9 +325,9 @@ def urlfetch_request( except Exception as e: raise HttpError(COMMUNICATION_ERROR.format(SUPPORT_EMAIL, e)) - return result.content, result.status_code + return result.content, result.status_code, result.headers - def handle_api_error(self, http_status: int, http_body: str, response: Dict[str, Any]) -> None: + def handle_api_error(self, http_status: int, http_body: str, response: dict[str, Any]) -> None: """Handles API errors returned from the EasyPost API.""" try: error = response["error"] @@ -319,7 +343,11 @@ def handle_api_error(self, http_status: int, http_body: str, response: Dict[str, error_type = STATUS_CODE_TO_ERROR_MAPPING.get(http_status, UnknownApiError) - raise error_type(message=error.get("message", ""), http_status=http_status, http_body=http_body) + raise error_type( + message=error.get("message", ""), + http_status=http_status, + http_body=http_body, + ) def _utf8(self, value: Union[str, bytes]) -> str: # Python3's str(bytestring) returns "b'bytestring'" so we use .decode instead @@ -327,7 +355,7 @@ def _utf8(self, value: Union[str, bytes]) -> str: return value.decode(encoding="utf-8") return value - def encode_url_params(self, params: Dict[str, Any], method: RequestMethod) -> Union[str, None]: + def encode_url_params(self, params: dict[str, Any], method: RequestMethod) -> Union[str, None]: """Encode params for a URL.""" if method not in [RequestMethod.GET, RequestMethod.DELETE]: raise EasyPostError(INVALID_REQUEST_PARAMETERS_ERROR) @@ -343,7 +371,7 @@ def encode_url_params(self, params: Dict[str, Any], method: RequestMethod) -> Un return urlencode(query=converted_params) - def add_params_to_url(self, url: str, params: Dict[str, Any], method: RequestMethod) -> str: + def add_params_to_url(self, url: str, params: dict[str, Any], method: RequestMethod) -> str: """Add params to the URL.""" if method not in [RequestMethod.GET, RequestMethod.DELETE]: raise EasyPostError(INVALID_REQUEST_PARAMETERS_ERROR) diff --git a/easypost/services/__init__.py b/easypost/services/__init__.py index f4302de0..61385d14 100644 --- a/easypost/services/__init__.py +++ b/easypost/services/__init__.py @@ -1,17 +1,22 @@ # flake8: noqa from easypost.services.address_service import AddressService +from easypost.services.api_key_service import ApiKeyService from easypost.services.batch_service import BatchService -from easypost.services.beta_carrier_metadata_service import BetaCarrierMetadataService from easypost.services.beta_rate_service import BetaRateService from easypost.services.beta_referral_customer_service import BetaReferralCustomerService from easypost.services.billing_service import BillingService from easypost.services.carrier_account_service import CarrierAccountService from easypost.services.carrier_metadata_service import CarrierMetadataService +from easypost.services.claim_service import ClaimService +from easypost.services.customer_portal_service import CustomerPortalService from easypost.services.customs_info_service import CustomsInfoService from easypost.services.customs_item_service import CustomsItemService +from easypost.services.embeddable_service import EmbeddableService from easypost.services.end_shipper_service import EndShipperService from easypost.services.event_service import EventService +from easypost.services.fedex_registration_service import FedExRegistrationService from easypost.services.insurance_service import InsuranceService +from easypost.services.luma_service import LumaService from easypost.services.order_service import OrderService from easypost.services.parcel_service import ParcelService from easypost.services.pickup_service import PickupService @@ -21,6 +26,7 @@ from easypost.services.report_service import ReportService from easypost.services.scan_form_service import ScanFormService from easypost.services.shipment_service import ShipmentService +from easypost.services.smartrate_service import SmartRateService from easypost.services.tracker_service import TrackerService from easypost.services.user_service import UserService from easypost.services.webhook_service import WebhookService diff --git a/easypost/services/address_service.py b/easypost/services/address_service.py index e8bad09c..bea69baa 100644 --- a/easypost/services/address_service.py +++ b/easypost/services/address_service.py @@ -1,6 +1,5 @@ from typing import ( Any, - Dict, Optional, ) @@ -22,33 +21,43 @@ def create( self, verify: Optional[bool] = None, verify_strict: Optional[bool] = None, + verify_carrier: Optional[str] = None, **params, ) -> Address: """Create an Address.""" url = self._class_url(self._model_class) - wrapped_params = {self._snakecase_name(self._model_class): params} # type: Dict[str, Any] + wrapped_params = {self._snakecase_name(self._model_class): params} # type: dict[str, Any] if verify: wrapped_params["verify"] = verify if verify_strict: wrapped_params["verify_strict"] = verify_strict + if verify_carrier: + wrapped_params["verify_carrier"] = verify_carrier response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) return convert_to_easypost_object(response=response) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Addresses.""" - return self._all_resources(self._model_class, **params) + filters = { + "key": "addresses", + } + + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id) -> Address: """Retrieve an Address.""" return self._retrieve_resource(self._model_class, id) - def create_and_verify(self, **params) -> Address: + def create_and_verify(self, verify_carrier: Optional[str] = None, **params) -> Address: """Create and verify an Address in one call.""" url = f"{self._class_url('address')}/create_and_verify" - wrapped_params = {self._snakecase_name(self._model_class): params} + wrapped_params = {self._snakecase_name(self._model_class): params} # type: dict[str, Any] + + if verify_carrier: + wrapped_params["verify_carrier"] = verify_carrier response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) @@ -64,9 +73,19 @@ def verify(self, id) -> Address: def get_next_page( self, - addresses: Dict[str, Any], + addresses: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list Addresses response.""" - return self._get_next_page_resources(self._model_class, addresses, page_size, optional_params) + self._check_has_next_page(collection=addresses) + + params = { + "before_id": addresses["addresses"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) diff --git a/easypost/services/api_key_service.py b/easypost/services/api_key_service.py new file mode 100644 index 00000000..f59247d2 --- /dev/null +++ b/easypost/services/api_key_service.py @@ -0,0 +1,67 @@ +from typing import Any + +from easypost.constant import NO_USER_FOUND +from easypost.easypost_object import convert_to_easypost_object +from easypost.errors import FilteringError +from easypost.models import ApiKey +from easypost.requestor import RequestMethod, Requestor +from easypost.services.base_service import BaseService + + +class ApiKeyService(BaseService): + def __init__(self, client): + self._client = client + self._model_class = ApiKey.__name__ + + def retrieve_api_keys_for_user(self, id: str) -> list[ApiKey]: + """Retrieve a list of API keys (works for the authenticated User or a child User).""" + api_keys = self.all() + + if api_keys["id"] == id: + # This function was called on the authenticated user + return api_keys["keys"] + + # This function was called on a child user (authenticated as parent, only return + # this child user's details). + for child in api_keys["children"]: + if child.id == id: + return child.keys + + raise FilteringError(message=NO_USER_FOUND) + + def all(self) -> dict[str, Any]: + """Retrieve a list of all API keys.""" + url = "/api_keys" + + response = Requestor(self._client).request(method=RequestMethod.GET, url=url) + + return convert_to_easypost_object(response=response) + + def create(self, mode: str) -> ApiKey: + """Create an API key for a child or referral customer user.""" + url = "/api_keys" + params = {"mode": mode} + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=params) + + return convert_to_easypost_object(response=response) + + def delete(self, id: str) -> None: + """Delete an API key for a child or referral customer user.""" + self._delete_resource(self._model_class, id) + + def enable(self, id: str) -> ApiKey: + """Enable a child or referral customer API key.""" + url = f"/api_keys/{id}/enable" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url) + + return convert_to_easypost_object(response=response) + + def disable(self, id: str) -> ApiKey: + """Disable a child or referral customer API key.""" + url = f"/api_keys/{id}/disable" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url) + + return convert_to_easypost_object(response=response) diff --git a/easypost/services/base_service.py b/easypost/services/base_service.py index 0c1b36a7..7dc643e0 100644 --- a/easypost/services/base_service.py +++ b/easypost/services/base_service.py @@ -1,12 +1,13 @@ import re from typing import ( Any, - Dict, - List, Optional, ) -from easypost.constant import NO_MORE_PAGES_ERROR +from easypost.constant import ( + _FILTERS_KEY, + NO_MORE_PAGES_ERROR, +) from easypost.easypost_object import convert_to_easypost_object from easypost.errors import EndOfPaginationError from easypost.requestor import ( @@ -37,74 +38,64 @@ def _instance_url(self, class_name: str, id: str) -> str: """Generate an instance URL based on a class name and ID.""" return f"{self._class_url(class_name)}/{id}" - def _create_resource(self, class_name: str, **params) -> Any: + def _create_resource(self, class_name: str, beta: bool = False, **params) -> Any: """Create an EasyPost object via the EasyPost API.""" url = self._class_url(class_name) wrapped_params = {self._snakecase_name(class_name): params} - response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params, beta=beta) return convert_to_easypost_object(response=response) - def _all_resources(self, class_name: str, **params) -> Any: + def _all_resources( + self, + class_name: str, + filters: Optional[dict[str, Any]] = None, + beta: bool = False, + **params, + ) -> Any: """Retrieve a list of EasyPostObjects from the EasyPost API.""" url = self._class_url(class_name) + response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params, beta=beta) - response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params) + if filters: # presence of filters indicates we are dealing with a paginated response + response[_FILTERS_KEY] = filters # Save the filters used to reference in potential get_next_page call return convert_to_easypost_object(response=response) - def _retrieve_resource(self, class_name: str, id: str) -> Any: + def _retrieve_resource(self, class_name: str, id: str, beta: bool = False) -> Any: """Retrieve an object from the EasyPost API.""" url = self._instance_url(class_name, id) - response = Requestor(self._client).request(method=RequestMethod.GET, url=url) + response = Requestor(self._client).request(method=RequestMethod.GET, url=url, beta=beta) return convert_to_easypost_object(response=response) - def _update_resource(self, class_name: str, id: str, method: RequestMethod = RequestMethod.PATCH, **params) -> Any: + def _update_resource( + self, + class_name: str, + id: str, + method: RequestMethod = RequestMethod.PATCH, + beta: bool = False, + **params, + ) -> Any: """Update an EasyPost object via the EasyPost API.""" url = self._instance_url(class_name, id) wrapped_params = {self._snakecase_name(class_name): params} - response = Requestor(self._client).request(method=method, url=url, params=wrapped_params) + response = Requestor(self._client).request(method=method, url=url, params=wrapped_params, beta=beta) return convert_to_easypost_object(response=response) - def _delete_resource(self, class_name: str, id: str) -> Any: + def _delete_resource(self, class_name: str, id: str, beta: bool = False) -> Any: """Delete an EasyPost object via the EasyPost API.""" url = self._instance_url(class_name, id) - response = Requestor(self._client).request(method=RequestMethod.DELETE, url=url) + response = Requestor(self._client).request(method=RequestMethod.DELETE, url=url, beta=beta) return convert_to_easypost_object(response=response) - def _get_next_page_resources( - self, - class_name: str, - collection: Dict[str, Any], - page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: - """Retrieve next page of EasyPostObjects via the EasyPost API.""" - url = self._class_url(class_name) - collection_array = collection.get(url[1:]) - - if collection_array is None or len(collection_array) == 0 or not collection.get("has_more"): - raise EndOfPaginationError(NO_MORE_PAGES_ERROR) - - params = { - "before_id": collection_array[-1].id, - "page_size": page_size, - } - - if optional_params: - params.update(optional_params) - - response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params) - - response_array: List[Any] = response.get(url[1:]) # type: ignore - if response is None or len(response_array) == 0 or not response.get("has_more"): + def _check_has_next_page(self, collection: dict[str, Any]) -> None: + """Raise exception if there is no next page of a collection.""" + if not collection.get("has_more", False): raise EndOfPaginationError(NO_MORE_PAGES_ERROR) - - return convert_to_easypost_object(response=response) diff --git a/easypost/services/batch_service.py b/easypost/services/batch_service.py index 53413ed7..4352f617 100644 --- a/easypost/services/batch_service.py +++ b/easypost/services/batch_service.py @@ -1,6 +1,5 @@ from typing import ( Any, - Dict, Optional, ) @@ -22,23 +21,18 @@ def create(self, **params) -> Batch: """Create a Batch.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Batches.""" - return self._all_resources(self._model_class, **params) + filters = { + "key": "batches", + } + + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id: str) -> Batch: """Retrieve a Batch.""" return self._retrieve_resource(self._model_class, id) - def create_and_buy(self, **params) -> Batch: - """Create and buy a Batch in a single call.""" - url = f"{self._class_url(self._model_class)}/create_and_buy" - wrapped_params = {self._snakecase_name(self._model_class): params} - - response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) - - return convert_to_easypost_object(response=response) - def buy(self, id: str, **params) -> Batch: """Buy a Batch.""" url = f"{self._instance_url(self._model_class, id)}/buy" @@ -81,9 +75,25 @@ def create_scan_form(self, id: str, **params) -> Batch: def get_next_page( self, - batches: Dict[str, Any], + batches: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: - """Retrieve the next page of the list Batch response.""" - return self._get_next_page_resources(self._model_class, batches, page_size, optional_params) + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: + """ + Retrieve the next page of the list Batch response. + + NOTE: This function has known issues with retrieving pages in order due to server-side issues. + It is not recommended to be used currently. + """ + # API doesn't return batches newest to oldest, so these parameters don't work as expected + self._check_has_next_page(collection=batches) + + params = { + "before_id": batches["batches"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) diff --git a/easypost/services/beta_carrier_metadata_service.py b/easypost/services/beta_carrier_metadata_service.py deleted file mode 100644 index 70555697..00000000 --- a/easypost/services/beta_carrier_metadata_service.py +++ /dev/null @@ -1,45 +0,0 @@ -from typing import ( - Any, - Dict, - List, - Optional, -) -from warnings import warn - -from easypost.easypost_object import convert_to_easypost_object -from easypost.requestor import ( - RequestMethod, - Requestor, -) -from easypost.services.base_service import BaseService - - -class BetaCarrierMetadataService(BaseService): - def __init__(self, client): - self._client = client - - def retrieve_carrier_metadata( - self, - carriers: Optional[List[str]] = None, - types: Optional[List[str]] = None, - ) -> List[Dict[str, Any]]: - """Get metadata for all carriers on the EasyPost platform.""" - warn( - 'This method is deprecated, use the "retrieve" function of "carrier_metadata" on the client instead.', - DeprecationWarning, - stacklevel=2, - ) - - params = { - "carriers": ",".join(carriers) if carriers else None, - "types": ",".join(types) if types else None, - } - - response = Requestor(self._client).request( - method=RequestMethod.GET, - url="/metadata", - params=params, - beta=True, - ) - - return convert_to_easypost_object(response=response.get("carriers", [])) diff --git a/easypost/services/beta_rate_service.py b/easypost/services/beta_rate_service.py index 16822353..82e05356 100644 --- a/easypost/services/beta_rate_service.py +++ b/easypost/services/beta_rate_service.py @@ -1,6 +1,5 @@ from typing import ( Any, - Dict, ) from easypost.easypost_object import convert_to_easypost_object @@ -17,7 +16,7 @@ def __init__(self, client): self._client = client self._model_class = Rate.__name__ - def retrieve_stateless_rates(self, **params) -> Dict[str, Any]: + def retrieve_stateless_rates(self, **params) -> dict[str, Any]: """Retrieves stateless rates by passing shipment data.""" url = self._class_url(self._model_class) wrapped_params = {"shipment": params} diff --git a/easypost/services/beta_referral_customer_service.py b/easypost/services/beta_referral_customer_service.py index 95c2df3f..d13843b8 100644 --- a/easypost/services/beta_referral_customer_service.py +++ b/easypost/services/beta_referral_customer_service.py @@ -1,6 +1,6 @@ from typing import ( Any, - Dict, + Optional, ) from easypost.easypost_object import convert_to_easypost_object @@ -17,7 +17,7 @@ def add_payment_method( stripe_customer_id: str, payment_method_reference: str, priority: str = "primary", - ) -> Dict[str, Any]: + ) -> dict[str, Any]: """Add a Stripe payment method to your EasyPost account. This endpoint uses a user's personal Stripe account. The `stripe_customer_id` @@ -25,7 +25,7 @@ def add_payment_method( EasyPost, we will associate your Stripe payment method with either your primary or secondary EasyPost payment method. """ - wrapped_params = { + params = { "payment_method": { "stripe_customer_id": stripe_customer_id, "payment_method_reference": payment_method_reference, @@ -36,33 +36,56 @@ def add_payment_method( response = Requestor(self._client).request( method=RequestMethod.POST, url="/referral_customers/payment_method", - params=wrapped_params, + params=params, beta=True, ) return convert_to_easypost_object(response=response) - def refund_by_amount(self, refund_amount: int) -> Dict[str, Any]: + def refund_by_amount(self, refund_amount: int) -> dict[str, Any]: """Refund a ReferralCustomer wallet by specifying an amount.""" - wrapped_params = {"refund_amount": refund_amount} + params = {"refund_amount": refund_amount} response = Requestor(self._client).request( method=RequestMethod.POST, url="/referral_customers/refunds", - params=wrapped_params, + params=params, beta=True, ) return convert_to_easypost_object(response=response) - def refund_by_payment_log(self, payment_log_id: str) -> Dict[str, Any]: + def refund_by_payment_log(self, payment_log_id: str) -> dict[str, Any]: """Refund a ReferralCustomer wallet by specifying a payment log ID to completely refund.""" - wrapped_params = {"payment_log_id": payment_log_id} + params = {"payment_log_id": payment_log_id} response = Requestor(self._client).request( method=RequestMethod.POST, url="/referral_customers/refunds", - params=wrapped_params, + params=params, + beta=True, + ) + + return convert_to_easypost_object(response=response) + + def create_credit_card_client_secret(self) -> dict[str, Any]: + """Creates a client secret to use with Stripe when adding a credit card.""" + response = Requestor(self._client).request( + method=RequestMethod.POST, + url="/setup_intents", + beta=True, + ) + + return convert_to_easypost_object(response=response) + + def create_bank_account_client_secret(self, return_url: Optional[str] = None) -> dict[str, Any]: + """Creates a client secret to use with Stripe when adding a bank account.""" + params = {"return_url": return_url} + + response = Requestor(self._client).request( + method=RequestMethod.POST, + url="/financial_connections_sessions", + params=params if return_url else None, beta=True, ) diff --git a/easypost/services/billing_service.py b/easypost/services/billing_service.py index 098cf177..7d80d994 100644 --- a/easypost/services/billing_service.py +++ b/easypost/services/billing_service.py @@ -1,7 +1,5 @@ from typing import ( Any, - Dict, - List, ) from easypost.constant import ( @@ -40,7 +38,7 @@ def delete_payment_method(self, priority: str) -> None: Requestor(self._client).request(method=RequestMethod.DELETE, url=url) - def retrieve_payment_methods(self, **params) -> Dict[str, Any]: + def retrieve_payment_methods(self, **params) -> dict[str, Any]: """Retrieve payment methods.""" response = Requestor(self._client).request( method=RequestMethod.GET, @@ -53,7 +51,7 @@ def retrieve_payment_methods(self, **params) -> Dict[str, Any]: return convert_to_easypost_object(response=response) - def _get_payment_method_info(self, priority: str = "primary") -> List[str]: + def _get_payment_method_info(self, priority: str = "primary") -> list[str]: """Get payment method info (type of the payment method and ID of the payment method)""" payment_methods = self.retrieve_payment_methods() @@ -66,9 +64,10 @@ def _get_payment_method_info(self, priority: str = "primary") -> List[str]: if payment_method_to_use and payment_methods[payment_method_to_use]: payment_method_id = payment_methods[payment_method_to_use]["id"] - if payment_method_id.startswith("card_"): + payment_method_object_type = payment_methods[payment_method_to_use].get("object", None) + if payment_method_object_type == "CreditCard": endpoint = "/credit_cards" - elif payment_method_id.startswith("bank_"): + elif payment_method_object_type == "BankAccount": endpoint = "/bank_accounts" else: raise InvalidObjectError(message=INVALID_PAYMENT_METHOD_ERROR) diff --git a/easypost/services/carrier_account_service.py b/easypost/services/carrier_account_service.py index f78ab78e..9f5d9e1f 100644 --- a/easypost/services/carrier_account_service.py +++ b/easypost/services/carrier_account_service.py @@ -1,12 +1,10 @@ from typing import ( Any, - Dict, - List, Optional, ) from easypost.constant import ( - _CARRIER_ACCOUNT_TYPES_WITH_CUSTOM_WORKFLOWS, + _CARRIER_ACCOUNT_CREATE_ENDPOINT_TYPES, MISSING_PARAMETER_ERROR, ) from easypost.easypost_object import convert_to_easypost_object @@ -32,13 +30,16 @@ def create(self, **params) -> CarrierAccount: raise MissingParameterError(MISSING_PARAMETER_ERROR.format("type")) url = self._select_carrier_account_creation_endpoint(carrier_account_type=carrier_account_type) - wrapped_params = {self._snakecase_name(self._model_class): params} + if url == "/carrier_accounts/register_oauth": + wrapped_params = {"carrier_account_oauth_registrations": params} + else: + wrapped_params = {self._snakecase_name(self._model_class): params} response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) return convert_to_easypost_object(response=response) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> list[dict[str, Any]]: """Retrieve a list of CarrierAccounts.""" return self._all_resources(self._model_class, **params) @@ -54,7 +55,7 @@ def delete(self, id: str) -> None: """Delete a CarrierAccount.""" self._delete_resource(self._model_class, id) - def types(self) -> List[Dict[str, Any]]: + def types(self) -> list[dict[str, Any]]: """Get the types of CarrierAccounts available to the User.""" response = Requestor(self._client).request(method=RequestMethod.GET, url="/carrier_types") @@ -62,7 +63,8 @@ def types(self) -> List[Dict[str, Any]]: def _select_carrier_account_creation_endpoint(self, carrier_account_type: Optional[Any]) -> str: """Determines which API endpoint to use for the creation call.""" - if carrier_account_type in _CARRIER_ACCOUNT_TYPES_WITH_CUSTOM_WORKFLOWS: - return "/carrier_accounts/register" + for endpoint, carrier_account_types in _CARRIER_ACCOUNT_CREATE_ENDPOINT_TYPES.items(): + if carrier_account_type in carrier_account_types: + return endpoint return "/carrier_accounts" diff --git a/easypost/services/carrier_metadata_service.py b/easypost/services/carrier_metadata_service.py index 52377cd7..d5f13497 100644 --- a/easypost/services/carrier_metadata_service.py +++ b/easypost/services/carrier_metadata_service.py @@ -1,7 +1,5 @@ from typing import ( Any, - Dict, - List, Optional, ) @@ -19,9 +17,9 @@ def __init__(self, client): def retrieve( self, - carriers: Optional[List[str]] = None, - types: Optional[List[str]] = None, - ) -> List[Dict[str, Any]]: + carriers: Optional[list[str]] = None, + types: Optional[list[str]] = None, + ) -> list[dict[str, Any]]: """Get metadata for all carriers on the EasyPost platform or specify optional filters.""" params = { "carriers": ",".join(carriers) if carriers else None, diff --git a/easypost/services/claim_service.py b/easypost/services/claim_service.py new file mode 100644 index 00000000..c7925b04 --- /dev/null +++ b/easypost/services/claim_service.py @@ -0,0 +1,69 @@ +from typing import ( + Any, + Optional, +) + +from easypost.easypost_object import convert_to_easypost_object +from easypost.models import Claim +from easypost.requestor import ( + RequestMethod, + Requestor, +) +from easypost.services.base_service import BaseService + + +class ClaimService(BaseService): + def __init__(self, client): + self._client = client + self._model_class = Claim.__name__ + + def create(self, **params) -> Claim: + """Create a Claim.""" + url = "/claims" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=params, beta=False) + + return convert_to_easypost_object(response=response) + + def all(self, **params) -> dict[str, Any]: + """Retrieve a list of Claims.""" + filters = { + "key": "claims", + } + + return self._all_resources(class_name=self._model_class, filters=filters, beta=False, **params) + + def retrieve(self, id: str) -> Claim: + """Retrieve a Claim.""" + return self._retrieve_resource(class_name=self._model_class, id=id, beta=False) + + def get_next_page( + self, + claims: dict[str, Any], + page_size: int, + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: + """Retrieve the next page of the list Claim response.""" + self._check_has_next_page(collection=claims) + + params = { + "before_id": claims["claims"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) + + def cancel(self, id: str) -> Claim: + """Cancel a Claim.""" + url = f"/claims/{id}/cancel" + + response = Requestor(self._client).request( + method=RequestMethod.POST, + url=url, + beta=False, + ) + + return convert_to_easypost_object(response=response) diff --git a/easypost/services/customer_portal_service.py b/easypost/services/customer_portal_service.py new file mode 100644 index 00000000..1e168e32 --- /dev/null +++ b/easypost/services/customer_portal_service.py @@ -0,0 +1,23 @@ +from typing import Any + +from easypost.easypost_object import convert_to_easypost_object +from easypost.requestor import ( + RequestMethod, + Requestor, +) +from easypost.services.base_service import BaseService + + +class CustomerPortalService(BaseService): + def __init__(self, client): + self._client = client + + def create_account_link(self, **params) -> dict[str, Any]: + """Create a Portal Session.""" + response = Requestor(self._client).request( + method=RequestMethod.POST, + url="/customer_portal/account_link", + params=params, + ) + + return convert_to_easypost_object(response=response) diff --git a/easypost/services/embeddable_service.py b/easypost/services/embeddable_service.py new file mode 100644 index 00000000..36205d4e --- /dev/null +++ b/easypost/services/embeddable_service.py @@ -0,0 +1,23 @@ +from typing import Any + +from easypost.easypost_object import convert_to_easypost_object +from easypost.requestor import ( + RequestMethod, + Requestor, +) +from easypost.services.base_service import BaseService + + +class EmbeddableService(BaseService): + def __init__(self, client): + self._client = client + + def create_session(self, **params) -> dict[str, Any]: + """Create an Embeddables Session.""" + response = Requestor(self._client).request( + method=RequestMethod.POST, + url="/embeddables/session", + params=params, + ) + + return convert_to_easypost_object(response=response) diff --git a/easypost/services/end_shipper_service.py b/easypost/services/end_shipper_service.py index edc565ef..7fd70d76 100644 --- a/easypost/services/end_shipper_service.py +++ b/easypost/services/end_shipper_service.py @@ -1,6 +1,5 @@ from typing import ( Any, - Dict, ) from easypost.easypost_object import convert_to_easypost_object @@ -30,7 +29,7 @@ def create(self, **params) -> Address: return convert_to_easypost_object(response=response) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of EndShippers.""" return self._all_resources(self._service_class, **params) diff --git a/easypost/services/event_service.py b/easypost/services/event_service.py index 0ee1d645..8d0aad3f 100644 --- a/easypost/services/event_service.py +++ b/easypost/services/event_service.py @@ -1,6 +1,5 @@ from typing import ( Any, - Dict, Optional, ) @@ -25,15 +24,19 @@ def create(self, **params) -> Event: """Create an Event.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Events.""" - return self._all_resources(self._model_class, **params) + filters = { + "key": "events", + } + + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id: str) -> Event: """Retrieve an Event.""" return self._retrieve_resource(self._model_class, id) - def retrieve_all_payloads(self, event_id: str, **params) -> Dict[str, Any]: + def retrieve_all_payloads(self, event_id: str, **params) -> dict[str, Any]: """Retrieve a list of Payloads for an Event.""" url = f"{self._class_url(self._model_class)}/{event_id}/payloads" @@ -51,9 +54,19 @@ def retrieve_payload(self, event_id: str, payload_id: str, **params) -> Payload: def get_next_page( self, - events: Dict[str, Any], + events: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list Events response.""" - return self._get_next_page_resources(self._model_class, events, page_size, optional_params) + self._check_has_next_page(collection=events) + + params = { + "before_id": events["events"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) diff --git a/easypost/services/fedex_registration_service.py b/easypost/services/fedex_registration_service.py new file mode 100644 index 00000000..ed73910b --- /dev/null +++ b/easypost/services/fedex_registration_service.py @@ -0,0 +1,104 @@ +import uuid +from typing import Any + +from easypost.easypost_object import convert_to_easypost_object +from easypost.requestor import RequestMethod, Requestor +from easypost.services.base_service import BaseService + + +class FedExRegistrationService(BaseService): + def __init__(self, client): + self._client = client + + def register_address(self, fedex_account_number: str, **params) -> dict[str, Any]: + """Register the billing address for a FedEx account.""" + wrapped_params = self._wrap_address_validation(params) + url = f"/fedex_registrations/{fedex_account_number}/address" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + + return convert_to_easypost_object(response=response) + + def request_pin(self, fedex_account_number: str, pin_method_option: str, **params) -> dict[str, Any]: + """Request a PIN for FedEx account verification.""" + wrapped_params = self._wrap_pin_validation(params) + wrapped_params["pin_method"] = {"option": pin_method_option} + url = f"/fedex_registrations/{fedex_account_number}/pin" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + + return convert_to_easypost_object(response=response) + + def validate_pin(self, fedex_account_number: str, **params) -> dict[str, Any]: + """Validate the PIN entered by the user for FedEx account verification.""" + wrapped_params = self._wrap_pin_validation(params) + url = f"/fedex_registrations/{fedex_account_number}/pin/validate" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + + return convert_to_easypost_object(response=response) + + def submit_invoice(self, fedex_account_number: str, **params) -> dict[str, Any]: + """Submit invoice information to complete FedEx account registration.""" + wrapped_params = self._wrap_invoice_validation(params) + url = f"/fedex_registrations/{fedex_account_number}/invoice" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + + return convert_to_easypost_object(response=response) + + def _wrap_address_validation(self, params: dict[str, Any]) -> dict[str, Any]: + """Wraps address validation parameters and ensures the "name" field exists. + If not present, generates a UUID (with hyphens removed) as the name. + """ + wrapped_params = {} + + if "address_validation" in params: + address_validation = params["address_validation"].copy() + self._ensure_name_field(address_validation) + wrapped_params["address_validation"] = address_validation + + if "easypost_details" in params: + wrapped_params["easypost_details"] = params["easypost_details"] + + return wrapped_params + + def _wrap_pin_validation(self, params: dict[str, Any]) -> dict[str, Any]: + """Wraps PIN validation parameters and ensures the "name" field exists. + If not present, generates a UUID (with hyphens removed) as the name. + """ + wrapped_params = {} + + if "pin_validation" in params: + pin_validation = params["pin_validation"].copy() + self._ensure_name_field(pin_validation) + wrapped_params["pin_validation"] = pin_validation + + if "easypost_details" in params: + wrapped_params["easypost_details"] = params["easypost_details"] + + return wrapped_params + + def _wrap_invoice_validation(self, params: dict[str, Any]) -> dict[str, Any]: + """Wraps invoice validation parameters and ensures the "name" field exists. + If not present, generates a UUID (with hyphens removed) as the name. + """ + wrapped_params = {} + + if "invoice_validation" in params: + invoice_validation = params["invoice_validation"].copy() + self._ensure_name_field(invoice_validation) + wrapped_params["invoice_validation"] = invoice_validation + + if "easypost_details" in params: + wrapped_params["easypost_details"] = params["easypost_details"] + + return wrapped_params + + def _ensure_name_field(self, mapping: dict[str, Any]) -> None: + """Ensures the "name" field exists in the provided map. + If not present, generates a UUID (with hyphens removed) as the name. + This follows the pattern used in the web UI implementation. + """ + if "name" not in mapping or mapping["name"] is None: + mapping["name"] = str(uuid.uuid4()).replace("-", "") diff --git a/easypost/services/insurance_service.py b/easypost/services/insurance_service.py index d2dfee1a..c60ea30f 100644 --- a/easypost/services/insurance_service.py +++ b/easypost/services/insurance_service.py @@ -1,10 +1,14 @@ from typing import ( Any, - Dict, Optional, ) +from easypost.easypost_object import convert_to_easypost_object from easypost.models import Insurance +from easypost.requestor import ( + RequestMethod, + Requestor, +) from easypost.services.base_service import BaseService @@ -17,9 +21,13 @@ def create(self, **params) -> Insurance: """Create an Insurance.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Insurances.""" - return self._all_resources(self._model_class, **params) + filters = { + "key": "insurances", + } + + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id: str) -> Insurance: """Retrieve an Insurance.""" @@ -27,9 +35,28 @@ def retrieve(self, id: str) -> Insurance: def get_next_page( self, - insurances: Dict[str, Any], + insurances: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list Insurance response.""" - return self._get_next_page_resources(self._model_class, insurances, page_size, optional_params) + self._check_has_next_page(collection=insurances) + + params = { + "before_id": insurances["insurances"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) + + def refund(self, id: str) -> Insurance: + url = f"/insurances/{id}/refund" + response = Requestor(self._client).request( + method=RequestMethod.POST, + url=url, + ) + + return convert_to_easypost_object(response=response) diff --git a/easypost/services/luma_service.py b/easypost/services/luma_service.py new file mode 100644 index 00000000..12024515 --- /dev/null +++ b/easypost/services/luma_service.py @@ -0,0 +1,33 @@ +from typing import ( + Any, +) + +from easypost.easypost_object import convert_to_easypost_object +from easypost.models import ( + Shipment, +) +from easypost.requestor import ( + RequestMethod, + Requestor, +) +from easypost.services.base_service import BaseService + + +class LumaService(BaseService): + def __init__(self, client): + self._client = client + self._model_class = "Luma" + + def get_promise( + self, + **params: dict[str, Any], + ) -> Shipment: + """Get service recommendations from Luma that meet the criteria of your ruleset.""" + url = "/luma/promise" + wrapped_params = { + self._snakecase_name("Shipment"): params, + } + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + + return convert_to_easypost_object(response=response.get("luma_info", {})) diff --git a/easypost/services/order_service.py b/easypost/services/order_service.py index c7a86863..0624b6ee 100644 --- a/easypost/services/order_service.py +++ b/easypost/services/order_service.py @@ -1,9 +1,3 @@ -from typing import ( - Any, - Dict, - Optional, -) - from easypost.easypost_object import convert_to_easypost_object from easypost.models import Order from easypost.requestor import ( @@ -26,15 +20,6 @@ def retrieve(self, id: str) -> Order: """Retrieve an Order.""" return self._retrieve_resource(self._model_class, id) - def get_next_page( - self, - insurances: Dict[str, Any], - page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: - """Retrieve the next page of the list Order response.""" - return self._get_next_page_resources(self._model_class, insurances, page_size, optional_params) - def get_rates(self, id: str) -> Order: """Get rates for an Order.""" url = f"{self._instance_url(self._model_class, id)}/rates" diff --git a/easypost/services/pickup_service.py b/easypost/services/pickup_service.py index eef05646..b38291ca 100644 --- a/easypost/services/pickup_service.py +++ b/easypost/services/pickup_service.py @@ -1,6 +1,5 @@ from typing import ( Any, - Dict, Optional, ) @@ -22,9 +21,13 @@ def create(self, **params) -> Pickup: """Create a Pickup.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Pickups.""" - return self._all_resources(self._model_class, **params) + filters = { + "key": "pickups", + } + + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id: str) -> Pickup: """Retrieve a Pickup.""" @@ -32,12 +35,22 @@ def retrieve(self, id: str) -> Pickup: def get_next_page( self, - pickups: Dict[str, Any], + pickups: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list Pickup response.""" - return self._get_next_page_resources(self._model_class, pickups, page_size, optional_params) + self._check_has_next_page(collection=pickups) + + params = { + "before_id": pickups["pickups"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) def buy(self, id: str, **params) -> Pickup: """Buy a Pickup.""" diff --git a/easypost/services/referral_customer_service.py b/easypost/services/referral_customer_service.py index 16c78bc1..236715ba 100644 --- a/easypost/services/referral_customer_service.py +++ b/easypost/services/referral_customer_service.py @@ -1,18 +1,13 @@ from copy import deepcopy from typing import ( Any, - Dict, Optional, ) -import requests - from easypost.constant import ( - SEND_STRIPE_DETAILS_ERROR, - TIMEOUT, + _FILTERS_KEY, ) from easypost.easypost_object import convert_to_easypost_object -from easypost.errors import ExternalApiError from easypost.models import User from easypost.requestor import ( RequestMethod, @@ -59,119 +54,86 @@ def update_email(self, id: str, email: str) -> None: params=wrapped_params, ) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of referral customers. This function requires the Partner User's API key. """ - response = Requestor(self._client).request( - method=RequestMethod.GET, - url="/referral_customers", - params=params, - ) + filters = { + "key": "referral_customers", + } + + url = "/referral_customers" + + response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params) + + response[_FILTERS_KEY] = filters # Save the filters used to reference in potential get_next_page call return convert_to_easypost_object(response=response) def get_next_page( self, - referral_customers: Dict[str, Any], + referral_customers: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve next page of referral customers.""" - return self._get_next_page_resources("referral_customers", referral_customers, page_size, optional_params) + self._check_has_next_page(collection=referral_customers) + + params = { + "before_id": referral_customers["referral_customers"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) - def add_credit_card( + def add_credit_card_from_stripe( self, referral_api_key: str, - number: str, - expiration_month: int, - expiration_year: int, - cvc: str, + payment_method_id: str, priority: str = "primary", - ) -> Dict[str, Any]: - """Add credit card to a referral customer. + ) -> dict[str, Any]: + """Add a credit card to EasyPost for a ReferralCustomer with a payment method ID from Stripe. This function requires the ReferralCustomer User's API key. """ - easypost_stripe_api_key = self._retrieve_easypost_stripe_api_key() - - try: - stripe_token = self._create_stripe_token( - number, - expiration_month, - expiration_year, - cvc, - easypost_stripe_api_key, - ) - except Exception: - raise ExternalApiError(message=SEND_STRIPE_DETAILS_ERROR) - - response = self._create_easypost_credit_card( - referral_api_key, - stripe_token.get("id", ""), - priority=priority, - ) - - return convert_to_easypost_object(response) - - def _retrieve_easypost_stripe_api_key(self) -> str: - """Retrieve EasyPost's Stripe public API key.""" - public_key = Requestor(self._client).request( - method=RequestMethod.GET, - url="/partners/stripe_public_key", - ) - - return public_key.get("public_key", "") - - def _create_stripe_token( - self, - number: str, - expiration_month: int, - expiration_year: int, - cvc: str, - easypost_stripe_key: str, - ) -> Dict[str, Any]: - """Get credit card token from Stripe.""" - headers = { - # This Stripe endpoint only accepts URL form encoded bodies - "Content-type": "application/x-www-form-urlencoded", - } - - credit_card_dict = { - "card": { - "number": number, - "exp_month": expiration_month, - "exp_year": expiration_year, - "cvc": cvc, + params = { + "credit_card": { + "payment_method_id": payment_method_id, + "priority": priority, } } - form_encoded_params = Requestor.form_encode_params(credit_card_dict) - url = "https://api.stripe.com/v1/tokens" + # Override the API key to use the referral's for this single request + referral_client = deepcopy(self._client) + referral_client.api_key = referral_api_key - stripe_response = requests.post( - url, - params=form_encoded_params, - headers=headers, - auth=requests.auth.HTTPBasicAuth(easypost_stripe_key, ""), - timeout=TIMEOUT, + response = Requestor(referral_client).request( + method=RequestMethod.POST, + params=params, + url="/credit_cards", ) - return stripe_response.json() + return convert_to_easypost_object(response) - def _create_easypost_credit_card( + def add_bank_account_from_stripe( self, referral_api_key: str, - stripe_object_id: str, + financial_connections_id: str, + mandate_data: dict[str, Any], priority: str = "primary", - ) -> Dict[str, Any]: - """Submit Stripe credit card token to EasyPost.""" + ) -> dict[str, Any]: + """Add a bank account to EasyPost for a ReferralCustomer. + + This function requires the ReferralCustomer User's API key. + """ params = { - "credit_card": { - "stripe_object_id": stripe_object_id, - "priority": priority, - } + "financial_connections_id": financial_connections_id, + "mandate_data": mandate_data, + "priority": priority, } # Override the API key to use the referral's for this single request @@ -181,7 +143,16 @@ def _create_easypost_credit_card( response = Requestor(referral_client).request( method=RequestMethod.POST, params=params, - url="/credit_cards", + url="/bank_accounts", + ) + + return convert_to_easypost_object(response) + + def retrieve_easypost_stripe_api_key(self) -> str: + """Retrieve EasyPost's Stripe public API key.""" + public_key = Requestor(self._client).request( + method=RequestMethod.GET, + url="/partners/stripe_public_key", ) - return response + return public_key.get("public_key", "") diff --git a/easypost/services/refund_service.py b/easypost/services/refund_service.py index f60f9043..e9f2fee5 100644 --- a/easypost/services/refund_service.py +++ b/easypost/services/refund_service.py @@ -1,7 +1,5 @@ from typing import ( Any, - Dict, - List, Optional, ) @@ -18,9 +16,13 @@ def create(self, **params) -> Refund: """Create a Shipment Refund.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> List[Refund]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Shipment Refunds.""" - return self._all_resources(self._model_class, **params) + filters = { + "key": "refunds", + } + + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id: str) -> Refund: """Retrieve a Shipment Refund.""" @@ -28,9 +30,19 @@ def retrieve(self, id: str) -> Refund: def get_next_page( self, - refunds: Dict[str, Any], + refunds: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list Refund response.""" - return self._get_next_page_resources(self._model_class, refunds, page_size, optional_params) + self._check_has_next_page(collection=refunds) + + params = { + "before_id": refunds["refunds"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) diff --git a/easypost/services/report_service.py b/easypost/services/report_service.py index 0bc67a29..ac2c2182 100644 --- a/easypost/services/report_service.py +++ b/easypost/services/report_service.py @@ -1,10 +1,12 @@ from typing import ( Any, - Dict, Optional, ) -from easypost.constant import MISSING_PARAMETER_ERROR +from easypost.constant import ( + _FILTERS_KEY, + MISSING_PARAMETER_ERROR, +) from easypost.easypost_object import convert_to_easypost_object from easypost.errors import MissingParameterError from easypost.models import Report @@ -22,28 +24,34 @@ def __init__(self, client): def create(self, **params) -> Report: """Create a Report.""" - refund_type = params.pop("type") + report_type = params.pop("type") - if refund_type is None: + if report_type is None: raise MissingParameterError(MISSING_PARAMETER_ERROR.format("type")) - url = f"{self._class_url(self._model_class)}/{refund_type}" + url = f"{self._class_url(self._model_class)}/{report_type}" response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=params) return convert_to_easypost_object(response=response) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Reports.""" - refund_type = params.pop("type") + # Capture some of the parameters used for later reference + filters = { + "key": "reports", + "type": params.get("type", None), + } - if refund_type is None: + report_type = params.pop("type") + if report_type is None: raise MissingParameterError(MISSING_PARAMETER_ERROR.format("type")) - url = f"{self._class_url(self._model_class)}/{refund_type}" + url = f"{self._class_url(self._model_class)}/{report_type}" response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params) - response["type"] = refund_type # Needed for retrieving the next page + + response[_FILTERS_KEY] = filters # Save the filters used to reference in potential get_next_page call return convert_to_easypost_object(response=response) @@ -53,21 +61,20 @@ def retrieve(self, id: str) -> Report: def get_next_page( self, - reports: Dict[str, Any], + reports: dict[str, Any], page_size: Optional[int] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list Report response.""" - refund_type = reports.get("type") + self._check_has_next_page(collection=reports) - if refund_type is None: - raise MissingParameterError(MISSING_PARAMETER_ERROR.format("type")) - - url = f"{self._class_url(self._model_class)}/{refund_type}" params = { "before_id": reports["reports"][-1].id, "page_size": page_size, + "type": reports.get(_FILTERS_KEY, {}).get("type"), # Use the same type as the last page } - response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params) + if optional_params: + params.update(optional_params) - return convert_to_easypost_object(response=response) + return self.all(**params) diff --git a/easypost/services/scan_form_service.py b/easypost/services/scan_form_service.py index 89f3abc4..fe5590a5 100644 --- a/easypost/services/scan_form_service.py +++ b/easypost/services/scan_form_service.py @@ -1,6 +1,5 @@ from typing import ( Any, - Dict, Optional, ) @@ -17,9 +16,13 @@ def create(self, **params) -> ScanForm: """Create a ScanForm.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of ScanForms.""" - return self._all_resources(self._model_class, **params) + filters = { + "key": "scan_forms", + } + + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id: str) -> ScanForm: """Retrieve a ScanForm.""" @@ -27,9 +30,19 @@ def retrieve(self, id: str) -> ScanForm: def get_next_page( self, - scan_forms: Dict[str, Any], + scan_forms: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list ScanForm response.""" - return self._get_next_page_resources(self._model_class, scan_forms, page_size, optional_params) + self._check_has_next_page(collection=scan_forms) + + params = { + "before_id": scan_forms["scan_forms"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all(**params) diff --git a/easypost/services/shipment_service.py b/easypost/services/shipment_service.py index c6ae2fdc..91a622db 100644 --- a/easypost/services/shipment_service.py +++ b/easypost/services/shipment_service.py @@ -1,10 +1,9 @@ from typing import ( Any, - Dict, - List, Optional, ) +from easypost.constant import _FILTERS_KEY from easypost.easypost_object import convert_to_easypost_object from easypost.models import ( Rate, @@ -23,25 +22,26 @@ def __init__(self, client): self._client = client self._model_class = Shipment.__name__ - def create(self, with_carbon_offset: Optional[bool] = False, **params) -> Shipment: + def create(self, **params) -> Shipment: """Create a Shipment.""" url = self._class_url(self._model_class) wrapped_params = { self._snakecase_name(self._model_class): params, - "carbon_offset": with_carbon_offset, } response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) return convert_to_easypost_object(response=response) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Shipments.""" - response = Requestor(self._client).request(method=RequestMethod.GET, url="/shipments", params=params) - response["include_children"] = params.get("include_children") - response["purchased"] = params.get("purchased") + filters = { + "key": "shipments", + "include_children": params.get("include_children"), + "purchased": params.get("purchased"), + } - return convert_to_easypost_object(response=response) + return self._all_resources(self._model_class, filters, **params) def retrieve(self, id: str) -> Shipment: """Retrieve a Shipment.""" @@ -49,28 +49,36 @@ def retrieve(self, id: str) -> Shipment: def get_next_page( self, - shipments: Dict[str, Any], + shipments: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Get next page of shipment collection.""" - optional_params = { - "include_children": shipments.get("include_children"), - "purchased": shipments.get("purchased"), + self._check_has_next_page(collection=shipments) + + params = { + "before_id": shipments["shipments"][-1].id, + "page_size": page_size, + # Use the same include_children as the last page + "include_children": shipments.get(_FILTERS_KEY, {}).get("include_children"), + # Use the same purchased as the last page + "purchased": shipments.get(_FILTERS_KEY, {}).get("purchased"), } - return self._get_next_page_resources(self._model_class, shipments, page_size, optional_params) + if optional_params: + params.update(optional_params) - def regenerate_rates(self, id: str, with_carbon_offset: Optional[bool] = False) -> Shipment: + return self.all(**params) + + def regenerate_rates(self, id: str) -> dict[str, list[Rate]]: """Regenerate Rates for a Shipment.""" url = f"{self._instance_url(self._model_class, id)}/rerate" - wrapped_params = {"carbon_offset": with_carbon_offset} - response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + response = Requestor(self._client).request(method=RequestMethod.POST, url=url) return convert_to_easypost_object(response=response) - def get_smart_rates(self, id: str) -> List[Rate]: + def get_smart_rates(self, id: str) -> list[Rate]: """Get SmartRates for a Shipment.""" url = f"{self._instance_url(self._model_class, id)}/smartrate" @@ -81,13 +89,11 @@ def get_smart_rates(self, id: str) -> List[Rate]: def buy( self, id: str, - with_carbon_offset: Optional[bool] = False, end_shipper_id: Optional[str] = None, **params, ) -> Shipment: """Buy a Shipment.""" url = f"{self._instance_url(self._model_class, id)}/buy" - params["carbon_offset"] = with_carbon_offset if end_shipper_id: params["end_shipper_id"] = end_shipper_id @@ -126,7 +132,7 @@ def lowest_smart_rate(self, id: str, delivery_days: int, delivery_accuracy: str) return lowest_smart_rate - def generate_form(self, id: str, form_type: str, form_options: Optional[Dict[str, Any]] = {}) -> Shipment: + def generate_form(self, id: str, form_type: str, form_options: Optional[dict[str, Any]] = {}) -> Shipment: """Generate a form for a Shipment.""" params = {"type": form_type} params.update(form_options) # type: ignore @@ -137,7 +143,7 @@ def generate_form(self, id: str, form_type: str, form_options: Optional[Dict[str return convert_to_easypost_object(response=response) - def retrieve_estimated_delivery_date(self, id: str, planned_ship_date: str) -> List[Dict[str, Any]]: + def retrieve_estimated_delivery_date(self, id: str, planned_ship_date: str) -> list[dict[str, Any]]: """Retrieves the estimated delivery date of each Rate via SmartRate.""" url = f"{self._instance_url(self._model_class, id)}/smartrate/delivery_date" wrapped_params = {"planned_ship_date": planned_ship_date} @@ -145,3 +151,39 @@ def retrieve_estimated_delivery_date(self, id: str, planned_ship_date: str) -> L response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=wrapped_params) return convert_to_easypost_object(response=response.get("rates", [])) + + def recommend_ship_date(self, id: str, desired_delivery_date: str) -> list[dict[str, Any]]: + """Retrieve a recommended ship date for an existing Shipment via the Precision Shipping API, + based on a specific desired delivery date. + """ + url = f"{self._instance_url(self._model_class, id)}/smartrate/precision_shipping" + params = {"desired_delivery_date": desired_delivery_date} + response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params) + + return convert_to_easypost_object(response=response.get("rates", [])) + + def create_and_buy_luma( + self, + **params: dict[str, Any], + ) -> Shipment: + """Create and buy a Luma Shipment in one call.""" + url = f"{self._class_url(self._model_class)}/luma" + wrapped_params = { + self._snakecase_name(self._model_class): params, + } + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + + return convert_to_easypost_object(response=response) + + def buy_luma( + self, + id: str, + **params: dict[str, Any], + ) -> Shipment: + """Buy a Shipment with Luma.""" + url = f"{self._instance_url(self._model_class, id)}/luma" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=params) + + return convert_to_easypost_object(response=response) diff --git a/easypost/services/smartrate_service.py b/easypost/services/smartrate_service.py new file mode 100644 index 00000000..9bb30f68 --- /dev/null +++ b/easypost/services/smartrate_service.py @@ -0,0 +1,36 @@ +from typing import ( + Any, +) + +from easypost.easypost_object import convert_to_easypost_object +from easypost.requestor import ( + RequestMethod, + Requestor, +) +from easypost.services.base_service import BaseService + + +class SmartRateService(BaseService): + def __init__(self, client): + self._client = client + self._model_class = "SmartRate" + + def estimate_delivery_date(self, **params) -> list[dict[str, Any]]: + """Retrieve the estimated delivery date of each carrier-service level combination via the + Smart Deliver By API, based on a specific ship date and origin-destination postal code pair. + """ + url = "/smartrate/deliver_by" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=params) + + return convert_to_easypost_object(response=response) + + def recommend_ship_date(self, **params) -> list[dict[str, Any]]: + """Retrieve a recommended ship date for each carrier-service level combination via the + Smart Deliver On API, based on a specific delivery date and origin-destination postal code pair. + """ + url = "/smartrate/deliver_on" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=params) + + return convert_to_easypost_object(response=response) diff --git a/easypost/services/tracker_service.py b/easypost/services/tracker_service.py index e3f67aea..eed418d0 100644 --- a/easypost/services/tracker_service.py +++ b/easypost/services/tracker_service.py @@ -1,16 +1,9 @@ -from typing import ( - Any, - Dict, - List, - Optional, -) +from typing import Any, Optional +from easypost.constant import _FILTERS_KEY from easypost.easypost_object import convert_to_easypost_object from easypost.models import Tracker -from easypost.requestor import ( - RequestMethod, - Requestor, -) +from easypost.requestor import RequestMethod, Requestor from easypost.services.base_service import BaseService @@ -23,13 +16,25 @@ def create(self, **params) -> Tracker: """Create a Tracker.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Trackers.""" - url = self._class_url(self._model_class) + filters = { + "key": "trackers", + "tracking_code": params.get("tracking_code"), + "tracking_codes": params.get("tracking_codes"), + "carrier": params.get("carrier"), + } + # Make Ruby on Rails happy with proper URL encoding + if params.get("tracking_codes"): + params["tracking_codes[]"] = params.pop("tracking_codes") + + return self._all_resources(self._model_class, filters, **params) - response = Requestor(self._client).request(method=RequestMethod.GET, url=url, params=params) - response["tracking_code"] = params.get("tracking_code") - response["carrier"] = params.get("carrier") + def retrieve_batch(self, **params) -> Tracker: + """Retrieve a batch of Trackers.""" + url = "/trackers/batch" + + response = Requestor(self._client).request(method=RequestMethod.POST, url=url, params=params) return convert_to_easypost_object(response=response) @@ -39,21 +44,27 @@ def retrieve(self, id: str) -> Tracker: def get_next_page( self, - trackers: Dict[str, Any], + trackers: dict[str, Any], page_size: int, - optional_params: Optional[Dict[str, Any]] = None, - ) -> Dict[str, Any]: + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: """Retrieve the next page of the list Tracker response.""" - optional_params = { - "tracking_code": trackers.get("tracking_code"), - "carrier": trackers.get("carrier"), + self._check_has_next_page(collection=trackers) + + params = { + "before_id": trackers["trackers"][-1].id, + "page_size": page_size, + "tracking_code": trackers.get(_FILTERS_KEY, {}).get( + "tracking_code" + ), # Use the same tracking_code as the last page + "carrier": trackers.get(_FILTERS_KEY, {}).get("carrier"), # Use the same carrier as the last page } - return self._get_next_page_resources(self._model_class, trackers, page_size, optional_params) + if optional_params: + params.update(optional_params) - def create_list(self, trackers: List[Dict[str, Any]]) -> None: - """Create a list of Trackers.""" - url = f"{self._class_url(self._model_class)}/create_list" - wrapped_params = {"trackers": trackers} + return self.all(**params) - Requestor(self._client).request(method=RequestMethod.POST, url=url, params=wrapped_params) + def delete(self, id: str) -> None: + """Delete a Tracker.""" + self._delete_resource(self._model_class, id) diff --git a/easypost/services/user_service.py b/easypost/services/user_service.py index a440af9a..dfeea029 100644 --- a/easypost/services/user_service.py +++ b/easypost/services/user_service.py @@ -1,15 +1,10 @@ from typing import ( Any, - Dict, - List, Optional, ) from easypost.easypost_object import convert_to_easypost_object -from easypost.models import ( - ApiKey, - User, -) +from easypost.models import User from easypost.requestor import ( RequestMethod, Requestor, @@ -26,7 +21,7 @@ def create(self, **params) -> User: """Create a User.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Users.""" return self._all_resources(self._model_class, **params) @@ -66,32 +61,6 @@ def retrieve_me(self) -> User: return convert_to_easypost_object(response=response) - def all_api_keys(self) -> Dict[str, Any]: - """Retrieve a list of all API keys.""" - url = "/api_keys" - - response = Requestor(self._client).request(method=RequestMethod.GET, url=url) - - return convert_to_easypost_object(response=response) - - def api_keys(self, id: str) -> List[ApiKey]: - """Retrieve a list of API keys (works for the authenticated User or a child User).""" - api_keys = self.all_api_keys() - my_api_keys = [] - - if api_keys["id"] == id: - # This function was called on the authenticated user - my_api_keys = api_keys["keys"] - else: - # This function was called on a child user (authenticated as parent, only return - # this child user's details). - for child in api_keys["children"]: - if child.id == id: - my_api_keys = child.keys - break - - return my_api_keys - def update_brand(self, id: str, **params) -> User: """Update a User's Brand.""" url = self._instance_url(self._model_class, id) + "/brand" @@ -103,3 +72,33 @@ def update_brand(self, id: str, **params) -> User: ) return convert_to_easypost_object(response=response) + + def all_children(self, **params) -> dict[str, Any]: + """Retrieve a paginated list of children from the API.""" + url = "/users/children" + response = Requestor(self._client).request( + method=RequestMethod.GET, + url=url, + params=params, + ) + + return convert_to_easypost_object(response=response) + + def get_next_page_of_children( + self, + children: dict[str, Any], + page_size: int, + optional_params: Optional[dict[str, Any]] = None, + ) -> dict[str, Any]: + """Retrieve the next page of the list Children response.""" + self._check_has_next_page(collection=children) + + params = { + "after_id": children["children"][-1].id, + "page_size": page_size, + } + + if optional_params: + params.update(optional_params) + + return self.all_children(**params) diff --git a/easypost/services/webhook_service.py b/easypost/services/webhook_service.py index 2817e666..13cdbba4 100644 --- a/easypost/services/webhook_service.py +++ b/easypost/services/webhook_service.py @@ -1,9 +1,13 @@ from typing import ( Any, - Dict, ) +from easypost.easypost_object import convert_to_easypost_object from easypost.models import Webhook +from easypost.requestor import ( + RequestMethod, + Requestor, +) from easypost.services.base_service import BaseService @@ -16,7 +20,7 @@ def create(self, **params) -> Webhook: """Create a Webhook.""" return self._create_resource(self._model_class, **params) - def all(self, **params) -> Dict[str, Any]: + def all(self, **params) -> dict[str, Any]: """Retrieve a list of Webhooks.""" return self._all_resources(self._model_class, **params) @@ -26,7 +30,11 @@ def retrieve(self, id: str) -> Webhook: def update(self, id: str, **params) -> Webhook: """Update a Webhook.""" - return self._update_resource(self._model_class, id, **params) + url = self._instance_url(self._model_class, id) + + response = Requestor(self._client).request(method=RequestMethod.PATCH, url=url, params=params) + + return convert_to_easypost_object(response=response) def delete(self, id: str) -> None: """Delete a Webhook.""" diff --git a/easypost/util.py b/easypost/util.py index b46555c7..f8ee9fed 100644 --- a/easypost/util.py +++ b/easypost/util.py @@ -4,9 +4,8 @@ import unicodedata from typing import ( Any, - Dict, - List, Optional, + Union, ) from easypost.constant import ( @@ -24,14 +23,15 @@ InvalidParameterError, SignatureVerificationError, ) +from easypost.models.rate import Rate def get_lowest_object_rate( - easypost_object: EasyPostObject, - carriers: Optional[List[str]] = None, - services: Optional[List[str]] = None, + easypost_object: Union[EasyPostObject, dict[str, Any]], + carriers: Optional[list[str]] = None, + services: Optional[list[str]] = None, rates_key: str = "rates", -): +) -> Rate: """Gets the lowest rate of an EasyPost object such as a Shipment, Order, or Pickup.""" carriers = carriers or [] services = services or [] @@ -53,7 +53,7 @@ def get_lowest_object_rate( return lowest_rate -def get_lowest_smart_rate(smart_rates, delivery_days: int, delivery_accuracy: str): +def get_lowest_smart_rate(smart_rates: list[Rate], delivery_days: int, delivery_accuracy: str) -> Rate: """Get the lowest SmartRate from a list of SmartRates.""" valid_delivery_accuracy_values = { "percentile_50", @@ -82,10 +82,10 @@ def get_lowest_smart_rate(smart_rates, delivery_days: int, delivery_accuracy: st def get_lowest_stateless_rate( - stateless_rates: List[Dict[str, Any]], - carriers: Optional[List[str]] = None, - services: Optional[List[str]] = None, -) -> Dict[str, Any]: + stateless_rates: list[dict[str, Any]], + carriers: Optional[list[str]] = None, + services: Optional[list[str]] = None, +) -> dict[str, Any]: """Get the lowest stateless rate.""" carriers = carriers or [] services = services or [] @@ -100,7 +100,7 @@ def get_lowest_stateless_rate( ): continue - if lowest_rate is None or float(rate.rate) < float(lowest_rate.rate): + if lowest_rate is None or float(rate["rate"]) < float(lowest_rate["rate"]): lowest_rate = rate if lowest_rate is None: @@ -114,7 +114,7 @@ def receive_event(raw_input: str): return convert_to_easypost_object(response=json.loads(raw_input)) -def validate_webhook(event_body: bytes, headers: Dict[str, Any], webhook_secret: str) -> Dict[str, Any]: +def validate_webhook(event_body: bytes, headers: dict[str, Any], webhook_secret: str) -> dict[str, Any]: """Validate a webhook by comparing the HMAC signature header sent from EasyPost to your shared secret. If the signatures do not match, an error will be raised signifying the webhook either did not originate from EasyPost or the secrets do not match. If the signatures do match, the `event_body` will be returned diff --git a/examples b/examples index 518e4e74..739f96c8 160000 --- a/examples +++ b/examples @@ -1 +1 @@ -Subproject commit 518e4e74d92312fe3cee075169889b48b920a096 +Subproject commit 739f96c80fa211060e0a0b8c13e7371c9a09d66f diff --git a/justfile b/justfile new file mode 100644 index 00000000..69ed6a83 --- /dev/null +++ b/justfile @@ -0,0 +1,66 @@ +VIRTUAL_ENV := ".venv" +VIRTUAL_BIN := VIRTUAL_ENV / "bin" +PROJECT_NAME := "easypost" +TEST_DIR := "tests" + +# Build the project for release +build: + uv build + +# Clean the project +clean: + rm -rf {{VIRTUAL_ENV}} dist/ *.egg-info/ .*cache htmlcov *.lcov .coverage + find . -name '*.pyc' -delete + +# Test with coverage and generate HTML report +coverage: + {{VIRTUAL_BIN}}/pytest --cov={{PROJECT_NAME}} --cov-branch --cov-report=html --cov-report=lcov --cov-report=term-missing --cov-fail-under=87 + +# Generate docs + +docs: + {{VIRTUAL_BIN}}/pdoc {{PROJECT_NAME}} -o docs + +# Initialize the examples submodule +init-examples-submodule: + git submodule init + git submodule update + +# Install the project locally (dev mode) +install: init-examples-submodule + uv venv + uv pip install -e '.[dev]' + +# Update the examples submodule +update-examples-submodule: + git submodule init + git submodule update --remote + +# Lint the project +lint: + {{VIRTUAL_BIN}}/ruff check {{PROJECT_NAME}}/ {{TEST_DIR}}/ + {{VIRTUAL_BIN}}/ruff format --check {{PROJECT_NAME}}/ {{TEST_DIR}}/ + +# Fix lint issues +lint-fix: + {{VIRTUAL_BIN}}/ruff check --fix {{PROJECT_NAME}}/ {{TEST_DIR}}/ + {{VIRTUAL_BIN}}/ruff format {{PROJECT_NAME}}/ {{TEST_DIR}}/ + +# Run mypy type checking +mypy: + {{VIRTUAL_BIN}}/mypy {{PROJECT_NAME}}/ {{TEST_DIR}}/ --install-types --non-interactive + +# Cuts a release for the project on GitHub (requires GitHub CLI) +# tag = The associated tag title of the release +# target = Target branch or full commit SHA +release tag target: + gh release create {{tag}} dist/* --target {{target}} + +# Scan for security issues with Bandit +scan: + {{VIRTUAL_BIN}}/bandit -r {{PROJECT_NAME}} + +# Run tests + +test: + {{VIRTUAL_BIN}}/pytest diff --git a/pyproject.toml b/pyproject.toml index ca2527d3..c6dac99a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,13 +1,54 @@ -[tool.black] +[build-system] +requires = ["setuptools>=61.0", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "easypost" +description = "EasyPost Shipping API Client Library for Python" +version = "10.7.0" +readme = "README.md" +requires-python = ">=3.9" +license = { file = "LICENSE" } +authors = [{ name = "EasyPost", email = "support@easypost.com" }] +classifiers = [ + "Development Status :: 5 - Production/Stable", + "Environment :: Web Environment", + "Programming Language :: Python", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Intended Audience :: Developers", + "Operating System :: OS Independent", + "License :: OSI Approved :: MIT License", + "Topic :: Software Development :: Libraries", +] +dependencies = ["requests >= 2.4.3"] +optional-dependencies = { dev = [ + "bandit == 1.8.*", + "mypy == 1.15.*", + "pdoc == 15.*", + "pytest == 8.*", + "pytest-cov == 6.*", + "pytest-vcr == 1.*", + "ruff == 0.14.*", + "vcrpy == 7.*", +] } + +[project.urls] +Docs = "https://docs.easypost.com" +Tracker = "https://github.com/EasyPost/easypost-python/issues" +Source = "https://github.com/EasyPost/easypost-python" + +[tool.setuptools.packages.find] +exclude = ["docs", "examples", "tests"] + +[tool.setuptools.package-data] +easypost = ["py.typed"] + +[tool.ruff] line-length = 120 -[tool.isort] -profile = "black" -line_length = 120 -indent = 4 -force_grid_wrap = 2 -multi_line_output = 3 -sections = "FUTURE,STDLIB,THIRDPARTY,FIRSTPARTY,LOCALFOLDER" -lines_after_imports = 2 -include_trailing_comma = true -use_parentheses = true +[tool.ruff.lint] +extend-select = ["I"] diff --git a/pytest.ini b/pytest.ini new file mode 100644 index 00000000..1b6aa55d --- /dev/null +++ b/pytest.ini @@ -0,0 +1,2 @@ +[pytest] +testpaths=tests diff --git a/setup.py b/setup.py deleted file mode 100644 index cca7d0ff..00000000 --- a/setup.py +++ /dev/null @@ -1,78 +0,0 @@ -from setuptools import ( - find_packages, - setup, -) - - -REQUIREMENTS = [ - "requests >= 2.4.3", - "typing-extensions", -] - -DEV_REQUIREMENTS = [ - "bandit==1.7.5", - "black==23.*", - "build==0.10.*", - "urllib3==1.*", # TODO: Pinned because vcrpy did a dumb and didn't pin urllib3 - "flake8==5.*", # TODO: flake8 v6 requires Python 3.8.1+ - "isort==5.*", - "mypy==1.3.*", - "pdoc==13.*", - "pytest-cov==4.*", - "pytest-vcr==1.*", - "pytest==7.*", - "twine==4.*", - "types-requests", - "types-urllib3", - "vcrpy==4.*", - "wheel==0.40.*", -] - -with open("README.md", encoding="utf-8") as f: - long_description = f.read() - -setup( - name="easypost", - version="8.0.0", - description="EasyPost Shipping API Client Library for Python", - author="EasyPost", - author_email="support@easypost.com", - url="https://easypost.com/", - packages=find_packages( - exclude=[ - "docs", - "examples", - "tests", - ] - ), - install_requires=REQUIREMENTS, - extras_require={ - "dev": DEV_REQUIREMENTS, - }, - package_data={ - "easypost": ["py.typed"], - }, - test_suite="test", - long_description=long_description, - long_description_content_type="text/markdown", - project_urls={ - "Docs": "https://www.easypost.com/docs/api", - "Tracker": "https://github.com/EasyPost/easypost-python/issues", - "Source": "https://github.com/EasyPost/easypost-python", - }, - python_requires=">=3.7, <4", - classifiers=[ - "Development Status :: 5 - Production/Stable", - "Environment :: Web Environment", - "Programming Language :: Python", - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Intended Audience :: Developers", - "Operating System :: OS Independent", - "License :: OSI Approved :: MIT License", - "Topic :: Software Development :: Libraries", - ], -) diff --git a/tests/cassettes/test_address_all.yaml b/tests/cassettes/test_address_all.yaml index 705c6607..57d2257d 100644 --- a/tests/cassettes/test_address_all.yaml +++ b/tests/cassettes/test_address_all.yaml @@ -16,63 +16,53 @@ interactions: uri: https://api.easypost.com/v2/addresses?page_size=5 response: body: - string: '{"addresses": [{"id": "adr_78e6a91af0fb11ed8048ac1f6bc72124", "object": - "Address", "created_at": "2023-05-12T19:30:37+00:00", "updated_at": "2023-05-12T19:30:37+00:00", + string: '{"addresses": [{"id": "adr_d128ff74fac311efa7a7ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, {"id": "adr_7894a4b4f0fb11eda772ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-12T19:30:36+00:00", "updated_at": "2023-05-12T19:30:36+00:00", "name": + {}}, {"id": "adr_d10f7a27fac311efa796ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, - "time_zone": "America/Los_Angeles"}}}}, {"id": "adr_7857b92df0fb11eda67cac1f6bc7b362", - "object": "Address", "created_at": "2023-05-12T19:30:36+00:00", "updated_at": - "2023-05-12T19:30:36+00:00", "name": null, "company": "EASYPOST", "street1": - "417 MONTGOMERY ST FL 5", "street2": null, "city": "SAN FRANCISCO", "state": - "CA", "zip": "94104-1129", "country": "US", "phone": "", "email": - "", "mode": "test", "carrier_facility": null, "residential": false, - "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": - true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", "field": "street2", - "message": "Invalid secondary information(Apt/Suite#)", "suggestion": null}], - "details": null}, "delivery": {"success": true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", - "field": "street2", "message": "Invalid secondary information(Apt/Suite#)", - "suggestion": null}], "details": {"latitude": 37.79342, "longitude": -122.40288, - "time_zone": "America/Los_Angeles"}}}}, {"id": "adr_7816dba5f0fb11eda574ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-12T19:30:36+00:00", "updated_at": - "2023-05-12T19:30:36+00:00", "name": "JACK SPARROW", "company": null, "street1": + "time_zone": "America/Los_Angeles"}}}}, {"id": "adr_d0f2ba11fac311ef9cfd3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": + "2025-03-06T19:47:20+00:00", "name": null, "company": "EasyPost", "street1": + "000 unknown street", "street2": null, "city": "Not A City", "state": "ZZ", + "zip": "00001", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {"zip4": {"success": false, "errors": + [{"code": "E.ADDRESS.NOT_FOUND", "field": "address", "message": "Address not + found", "suggestion": null}], "details": null}, "delivery": {"success": false, + "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": "address", "message": + "Address not found", "suggestion": null}], "details": {}}}}, {"id": "adr_d0e54933fac311ef8140ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": + "2025-03-06T19:47:20+00:00", "name": null, "company": "EasyPost", "street1": + "000 unknown street", "street2": null, "city": "Not A City", "state": "ZZ", + "zip": "00001", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, {"id": "adr_d0ce4939fac311ef9ce63cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": + "2025-03-06T19:47:20+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": - "America/Los_Angeles"}}}}, {"id": "adr_77d9ed8af0fb11eda485ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-12T19:30:35+00:00", "updated_at": - "2023-05-12T19:30:35+00:00", "name": null, "company": "EASYPOST", "street1": - "417 MONTGOMERY ST FL 5", "street2": null, "city": "SAN FRANCISCO", "state": - "CA", "zip": "94104-1129", "country": "US", "phone": "", "email": - "", "mode": "test", "carrier_facility": null, "residential": false, - "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": - true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", "field": "street2", - "message": "Invalid secondary information(Apt/Suite#)", "suggestion": null}], - "details": null}, "delivery": {"success": true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", - "field": "street2", "message": "Invalid secondary information(Apt/Suite#)", - "suggestion": null}], "details": {"latitude": 37.79342, "longitude": -122.40288, - "time_zone": "America/Los_Angeles"}}}}], "has_more": true}' + "America/Los_Angeles"}}}}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '3611' + - '2996' content-type: - application/json; charset=utf-8 - etag: - - W/"3c5fdbdd62b40380463e1deb9a6f306b" expires: - '0' pragma: @@ -90,20 +80,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b50645e93dde2cc316000061fc6 + - 4a484c0a67c9fbc8e2b9771300188c57 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.054539' + - '0.033610' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_create.yaml b/tests/cassettes/test_address_create.yaml index 7acca7fe..3dc1d623 100644 --- a/tests/cassettes/test_address_create.yaml +++ b/tests/cassettes/test_address_create.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_779da35ef0fb11ed9ce1ac1f6bc7bdc6", "object": "Address", - "created_at": "2023-05-12T19:30:35+00:00", "updated_at": "2023-05-12T19:30:35+00:00", + string: '{"id": "adr_d08a1a4afac311ef9cc23cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:47:19+00:00", "updated_at": "2025-03-06T19:47:19+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -36,12 +36,10 @@ interactions: - '461' content-type: - application/json; charset=utf-8 - etag: - - W/"35c6c397111b5387c8a3420bb0be9d41" expires: - '0' location: - - /api/v2/addresses/adr_779da35ef0fb11ed9ce1ac1f6bc7bdc6 + - /api/v2/addresses/adr_d08a1a4afac311ef9cc23cecef1b359e pragma: - no-cache referrer-policy: @@ -57,21 +55,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fcd79951645e93dbe2cc315a00060bef + - 8e8eb62767c9fbc7e2b976f600184a4b x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.038412' + - '0.028104' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_create_and_verify.yaml b/tests/cassettes/test_address_create_and_verify.yaml index 177a74ba..bd87afa2 100644 --- a/tests/cassettes/test_address_create_and_verify.yaml +++ b/tests/cassettes/test_address_create_and_verify.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/addresses/create_and_verify response: body: - string: '{"address": {"id": "adr_7894a4b4f0fb11eda772ac1f6bc7b362", "object": - "Address", "created_at": "2023-05-12T19:30:36+00:00", "updated_at": "2023-05-12T19:30:36+00:00", + string: '{"address": {"id": "adr_d10f7a27fac311efa796ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -38,12 +38,10 @@ interactions: - '658' content-type: - application/json; charset=utf-8 - etag: - - W/"c0bdac5d259b74bea9ffeb93e754a9c0" expires: - '0' location: - - /api/v2/addresses/adr_7894a4b4f0fb11eda772ac1f6bc7b362 + - /api/v2/addresses/adr_d10f7a27fac311efa796ac1f6bc539ae pragma: - no-cache referrer-policy: @@ -59,21 +57,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870d645e93dce2cc315e0005fc65 + - 8e8eb62767c9fbc8e2b9771100184b2d x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.051215' + - '0.054163' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_create_and_verify_carrier.yaml b/tests/cassettes/test_address_create_and_verify_carrier.yaml new file mode 100644 index 00000000..065e80db --- /dev/null +++ b/tests/cassettes/test_address_create_and_verify_carrier.yaml @@ -0,0 +1,82 @@ +interactions: +- request: + body: '{"address": {"company": "EasyPost", "street1": "000 unknown street", "city": + "Not A City", "state": "ZZ", "zip": "00001", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "verify_carrier": "UPS"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '216' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/addresses/create_and_verify + response: + body: + string: '{"address": {"id": "adr_b532f4f1bc0311f0b86eac1f6bc539aa", "object": + "Address", "created_at": "2025-11-07T18:00:55Z", "updated_at": "2025-11-07T18:00:55Z", + "name": null, "company": "EASYPOST", "street1": "000 UNKNOWN STREET", "street2": + "", "city": "NOT A CITY", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": + "address", "message": "Address not found", "suggestion": null}], "details": + null}, "delivery": {"success": true, "errors": [{"code": "E.ADDRESS.NOT_FOUND", + "field": "address", "message": "Address not found", "suggestion": null}], + "details": {"latitude": null, "longitude": null, "time_zone": null}}, "verify_carrier": + "ups"}}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '820' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/addresses/adr_b532f4f1bc0311f0b86eac1f6bc539aa + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - bcd43723690e33d7e786a7bd02a1cbd9 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb42nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq c0061e0a2e + - extlb2nuq cbbd141214 + x-runtime: + - '0.492859' + x-version-label: + - easypost-202511071655-85836cab32-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_address_create_verify.yaml b/tests/cassettes/test_address_create_verify.yaml index 93727cc7..85246177 100644 --- a/tests/cassettes/test_address_create_verify.yaml +++ b/tests/cassettes/test_address_create_verify.yaml @@ -1,8 +1,8 @@ interactions: - request: - body: '{"address": {"company": "EasyPost", "street1": "417 montgomery street", - "street2": "FL 5", "city": "San Francisco", "state": "CA", "zip": "94104", "country": - "US", "email": "test@example.com", "phone": "5555555555"}, "verify": true}' + body: '{"address": {"company": "EasyPost", "street1": "000 unknown street", "city": + "Not A City", "state": "ZZ", "zip": "00001", "country": "US", "email": "test@example.com", + "phone": "5555555555"}}' headers: Accept: - '*/*' @@ -11,7 +11,7 @@ interactions: Connection: - keep-alive Content-Length: - - '232' + - '191' Content-Type: - application/json authorization: @@ -22,31 +22,24 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_77d9ed8af0fb11eda485ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-12T19:30:35+00:00", "updated_at": "2023-05-12T19:30:35+00:00", - "name": null, "company": "EASYPOST", "street1": "417 MONTGOMERY ST FL 5", - "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94104-1129", - "country": "US", "phone": "", "email": "", "mode": "test", - "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": - null, "verifications": {"zip4": {"success": true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", - "field": "street2", "message": "Invalid secondary information(Apt/Suite#)", - "suggestion": null}], "details": null}, "delivery": {"success": true, "errors": - [{"code": "E.SECONDARY_INFORMATION.INVALID", "field": "street2", "message": - "Invalid secondary information(Apt/Suite#)", "suggestion": null}], "details": - {"latitude": 37.79342, "longitude": -122.40288, "time_zone": "America/Los_Angeles"}}}}' + string: '{"id": "adr_d0a11741fac311ef811eac1f6bc53342", "object": "Address", + "created_at": "2025-03-06T19:47:19+00:00", "updated_at": "2025-03-06T19:47:19+00:00", + "name": null, "company": "EasyPost", "street1": "000 unknown street", "street2": + null, "city": "Not A City", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '907' + - '453' content-type: - application/json; charset=utf-8 - etag: - - W/"230439fff07642253c25c218bb51f982" expires: - '0' location: - - /api/v2/addresses/adr_77d9ed8af0fb11eda485ac1f6bc7b362 + - /api/v2/addresses/adr_d0a11741fac311ef811eac1f6bc53342 pragma: - no-cache referrer-policy: @@ -62,21 +55,99 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fcd79957645e93dbe2cc315b00060c1c + - 8e8eb62567c9fbc7e2b976f700184a79 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.048013' + - '0.034875' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{"address": {"company": "EasyPost", "street1": "000 unknown street", "city": + "Not A City", "state": "ZZ", "zip": "00001", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "verify": true}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '207' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/addresses + response: + body: + string: '{"id": "adr_d0af7486fac311efa766ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:19+00:00", "updated_at": "2025-03-06T19:47:19+00:00", + "name": null, "company": "EasyPost", "street1": "000 unknown street", "street2": + null, "city": "Not A City", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": false, "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": + "address", "message": "Address not found", "suggestion": null}], "details": + null}, "delivery": {"success": false, "errors": [{"code": "E.ADDRESS.NOT_FOUND", + "field": "address", "message": "Address not found", "suggestion": null}], + "details": {}}}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '750' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/addresses/adr_d0af7486fac311efa766ac1f6bc539ae + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62567c9fbc7e2b976f700184a8f + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb34nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.050675' + x-version-label: + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_create_verify_array.yaml b/tests/cassettes/test_address_create_verify_array.yaml index 0c5c234e..9ea9fa82 100644 --- a/tests/cassettes/test_address_create_verify_array.yaml +++ b/tests/cassettes/test_address_create_verify_array.yaml @@ -1,8 +1,8 @@ interactions: - request: - body: '{"address": {"company": "EasyPost", "street1": "417 montgomery street", - "street2": "FL 5", "city": "San Francisco", "state": "CA", "zip": "94104", "country": - "US", "email": "test@example.com", "phone": "5555555555"}, "verify": [true]}' + body: '{"address": {"company": "EasyPost", "street1": "000 unknown street", "city": + "Not A City", "state": "ZZ", "zip": "00001", "country": "US", "email": "test@example.com", + "phone": "5555555555"}}' headers: Accept: - '*/*' @@ -11,7 +11,7 @@ interactions: Connection: - keep-alive Content-Length: - - '234' + - '191' Content-Type: - application/json authorization: @@ -22,31 +22,24 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_7857b92df0fb11eda67cac1f6bc7b362", "object": "Address", - "created_at": "2023-05-12T19:30:36+00:00", "updated_at": "2023-05-12T19:30:36+00:00", - "name": null, "company": "EASYPOST", "street1": "417 MONTGOMERY ST FL 5", - "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94104-1129", - "country": "US", "phone": "", "email": "", "mode": "test", - "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": - null, "verifications": {"zip4": {"success": true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", - "field": "street2", "message": "Invalid secondary information(Apt/Suite#)", - "suggestion": null}], "details": null}, "delivery": {"success": true, "errors": - [{"code": "E.SECONDARY_INFORMATION.INVALID", "field": "street2", "message": - "Invalid secondary information(Apt/Suite#)", "suggestion": null}], "details": - {"latitude": 37.79342, "longitude": -122.40288, "time_zone": "America/Los_Angeles"}}}}' + string: '{"id": "adr_d0e54933fac311ef8140ac1f6bc53342", "object": "Address", + "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", + "name": null, "company": "EasyPost", "street1": "000 unknown street", "street2": + null, "city": "Not A City", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '907' + - '453' content-type: - application/json; charset=utf-8 - etag: - - W/"9ddf629be3716817f7b636f120d08876" expires: - '0' location: - - /api/v2/addresses/adr_7857b92df0fb11eda67cac1f6bc7b362 + - /api/v2/addresses/adr_d0e54933fac311ef8140ac1f6bc53342 pragma: - no-cache referrer-policy: @@ -57,28 +50,104 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - fe8d8709645e93dce2cc315d0005fc3d + - 8e8eb62767c9fbc8e2b9771000184af0 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.041322' + - '0.032329' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{"address": {"company": "EasyPost", "street1": "000 unknown street", "city": + "Not A City", "state": "ZZ", "zip": "00001", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "verify": [true]}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '209' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/addresses + response: + body: + string: '{"id": "adr_d0f2ba11fac311ef9cfd3cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", + "name": null, "company": "EasyPost", "street1": "000 unknown street", "street2": + null, "city": "Not A City", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": false, "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": + "address", "message": "Address not found", "suggestion": null}], "details": + null}, "delivery": {"success": false, "errors": [{"code": "E.ADDRESS.NOT_FOUND", + "field": "address", "message": "Address not found", "suggestion": null}], + "details": {}}}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '750' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/addresses/adr_d0f2ba11fac311ef9cfd3cecef1b359e + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62767c9fbc8e2b9771000184b02 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb33nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.049655' + x-version-label: + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_create_verify_carrier.yaml b/tests/cassettes/test_address_create_verify_carrier.yaml new file mode 100644 index 00000000..61aa9523 --- /dev/null +++ b/tests/cassettes/test_address_create_verify_carrier.yaml @@ -0,0 +1,82 @@ +interactions: +- request: + body: '{"address": {"company": "EasyPost", "street1": "000 unknown street", "city": + "Not A City", "state": "ZZ", "zip": "00001", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "verify": true, "verify_carrier": "UPS"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '232' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/addresses + response: + body: + string: '{"id": "adr_6bbec015bb5011f082233cecef1b359e", "object": "Address", + "created_at": "2025-11-06T20:37:32Z", "updated_at": "2025-11-06T20:37:32Z", + "name": null, "company": "EASYPOST", "street1": "000 UNKNOWN STREET", "street2": + "", "city": "NOT A CITY", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": + "address", "message": "Address not found", "suggestion": null}], "details": + null}, "delivery": {"success": true, "errors": [{"code": "E.ADDRESS.NOT_FOUND", + "field": "address", "message": "Address not found", "suggestion": null}], + "details": {"latitude": null, "longitude": null, "time_zone": null}}, "verify_carrier": + "ups"}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '808' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/addresses/adr_6bbec015bb5011f082233cecef1b359e + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - bcd43725690d070be2b85def014ed69a + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb66nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq c0061e0a2e + - extlb2nuq cbbd141214 + x-runtime: + - '0.837269' + x-version-label: + - easypost-202511061930-711db047b0-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_address_create_verify_strict.yaml b/tests/cassettes/test_address_create_verify_strict.yaml index e304cfb7..3b4e4009 100644 --- a/tests/cassettes/test_address_create_verify_strict.yaml +++ b/tests/cassettes/test_address_create_verify_strict.yaml @@ -23,8 +23,8 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_7816dba5f0fb11eda574ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-12T19:30:36+00:00", "updated_at": "2023-05-12T19:30:36+00:00", + string: '{"id": "adr_d0ce4939fac311ef9ce63cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -39,12 +39,10 @@ interactions: - '646' content-type: - application/json; charset=utf-8 - etag: - - W/"40e2ef0b233432aefa439b0ba385fa29" expires: - '0' location: - - /api/v2/addresses/adr_7816dba5f0fb11eda574ac1f6bc7b362 + - /api/v2/addresses/adr_d0ce4939fac311ef9ce63cecef1b359e pragma: - no-cache referrer-policy: @@ -60,21 +58,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fcd79957645e93dbe2cc315c00060c40 + - 8e8eb62967c9fbc7e2b976f800184ac4 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.077775' + - '0.064436' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_get_next_page.yaml b/tests/cassettes/test_address_get_next_page.yaml index 57b0b0f7..f08bb832 100644 --- a/tests/cassettes/test_address_get_next_page.yaml +++ b/tests/cassettes/test_address_get_next_page.yaml @@ -16,63 +16,53 @@ interactions: uri: https://api.easypost.com/v2/addresses?page_size=5 response: body: - string: '{"addresses": [{"id": "adr_78e6a91af0fb11ed8048ac1f6bc72124", "object": - "Address", "created_at": "2023-05-12T19:30:37+00:00", "updated_at": "2023-05-12T19:30:37+00:00", + string: '{"addresses": [{"id": "adr_d128ff74fac311efa7a7ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, {"id": "adr_7894a4b4f0fb11eda772ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-12T19:30:36+00:00", "updated_at": "2023-05-12T19:30:36+00:00", "name": + {}}, {"id": "adr_d10f7a27fac311efa796ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, - "time_zone": "America/Los_Angeles"}}}}, {"id": "adr_7857b92df0fb11eda67cac1f6bc7b362", - "object": "Address", "created_at": "2023-05-12T19:30:36+00:00", "updated_at": - "2023-05-12T19:30:36+00:00", "name": null, "company": "EASYPOST", "street1": - "417 MONTGOMERY ST FL 5", "street2": null, "city": "SAN FRANCISCO", "state": - "CA", "zip": "94104-1129", "country": "US", "phone": "", "email": - "", "mode": "test", "carrier_facility": null, "residential": false, - "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": - true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", "field": "street2", - "message": "Invalid secondary information(Apt/Suite#)", "suggestion": null}], - "details": null}, "delivery": {"success": true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", - "field": "street2", "message": "Invalid secondary information(Apt/Suite#)", - "suggestion": null}], "details": {"latitude": 37.79342, "longitude": -122.40288, - "time_zone": "America/Los_Angeles"}}}}, {"id": "adr_7816dba5f0fb11eda574ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-12T19:30:36+00:00", "updated_at": - "2023-05-12T19:30:36+00:00", "name": "JACK SPARROW", "company": null, "street1": + "time_zone": "America/Los_Angeles"}}}}, {"id": "adr_d0f2ba11fac311ef9cfd3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": + "2025-03-06T19:47:20+00:00", "name": null, "company": "EasyPost", "street1": + "000 unknown street", "street2": null, "city": "Not A City", "state": "ZZ", + "zip": "00001", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {"zip4": {"success": false, "errors": + [{"code": "E.ADDRESS.NOT_FOUND", "field": "address", "message": "Address not + found", "suggestion": null}], "details": null}, "delivery": {"success": false, + "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": "address", "message": + "Address not found", "suggestion": null}], "details": {}}}}, {"id": "adr_d0e54933fac311ef8140ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": + "2025-03-06T19:47:20+00:00", "name": null, "company": "EasyPost", "street1": + "000 unknown street", "street2": null, "city": "Not A City", "state": "ZZ", + "zip": "00001", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, {"id": "adr_d0ce4939fac311ef9ce63cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:47:20+00:00", "updated_at": + "2025-03-06T19:47:20+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": - "America/Los_Angeles"}}}}, {"id": "adr_77d9ed8af0fb11eda485ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-12T19:30:35+00:00", "updated_at": - "2023-05-12T19:30:35+00:00", "name": null, "company": "EASYPOST", "street1": - "417 MONTGOMERY ST FL 5", "street2": null, "city": "SAN FRANCISCO", "state": - "CA", "zip": "94104-1129", "country": "US", "phone": "", "email": - "", "mode": "test", "carrier_facility": null, "residential": false, - "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": - true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", "field": "street2", - "message": "Invalid secondary information(Apt/Suite#)", "suggestion": null}], - "details": null}, "delivery": {"success": true, "errors": [{"code": "E.SECONDARY_INFORMATION.INVALID", - "field": "street2", "message": "Invalid secondary information(Apt/Suite#)", - "suggestion": null}], "details": {"latitude": 37.79342, "longitude": -122.40288, - "time_zone": "America/Los_Angeles"}}}}], "has_more": true}' + "America/Los_Angeles"}}}}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '3611' + - '2996' content-type: - application/json; charset=utf-8 - etag: - - W/"3c5fdbdd62b40380463e1deb9a6f306b" expires: - '0' pragma: @@ -90,20 +80,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b51645e93dee2cc316100061fd2 + - 4a484c0c67c9fbc8e2b9771400188c7c x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.033317' + - '0.039677' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -123,49 +113,54 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/addresses?before_id=adr_77d9ed8af0fb11eda485ac1f6bc7b362&page_size=5 + uri: https://api.easypost.com/v2/addresses?before_id=adr_d0ce4939fac311ef9ce63cecef1b359e&page_size=5 response: body: - string: '{"addresses": [{"id": "adr_779da35ef0fb11ed9ce1ac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-12T19:30:35+00:00", "updated_at": "2023-05-12T19:30:35+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + string: '{"addresses": [{"id": "adr_d0af7486fac311efa766ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:19+00:00", "updated_at": "2025-03-06T19:47:19+00:00", + "name": null, "company": "EasyPost", "street1": "000 unknown street", "street2": + null, "city": "Not A City", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, {"id": "adr_301dd00ae45711edb6c9ac1f6bc7b362", "object": "Address", "created_at": - "2023-04-26T17:24:23+00:00", "updated_at": "2023-04-26T17:24:23+00:00", "name": + {"zip4": {"success": false, "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": + "address", "message": "Address not found", "suggestion": null}], "details": + null}, "delivery": {"success": false, "errors": [{"code": "E.ADDRESS.NOT_FOUND", + "field": "address", "message": "Address not found", "suggestion": null}], + "details": {}}}}, {"id": "adr_d0a11741fac311ef811eac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:47:19+00:00", "updated_at": "2025-03-06T19:47:19+00:00", + "name": null, "company": "EasyPost", "street1": "000 unknown street", "street2": + null, "city": "Not A City", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, {"id": "adr_d08a1a4afac311ef9cc23cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:47:19+00:00", "updated_at": "2025-03-06T19:47:19+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, {"id": "adr_301b2d5be45711ed9d33ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-04-26T17:24:23+00:00", "updated_at": "2023-04-26T17:24:23+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, {"id": "adr_19946d04e45711edbedbac1f6b0a0d1e", "object": "Address", "created_at": - "2023-04-26T17:23:46+00:00", "updated_at": "2023-04-26T17:23:46+00:00", "name": + {}}, {"id": "adr_fabb4013f08111efacb8ac1f6bc53342", "object": "Address", "created_at": + "2025-02-21T18:30:51+00:00", "updated_at": "2025-02-21T18:30:51+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, {"id": "adr_1991858ae45711eda335ac1f6bc7b362", "object": "Address", "created_at": - "2023-04-26T17:23:46+00:00", "updated_at": "2023-04-26T17:23:46+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}], "has_more": true}' + {}}, {"id": "adr_fab8798ef08111ef8ca73cecef1b359e", "object": "Address", "created_at": + "2025-02-21T18:30:51+00:00", "updated_at": "2025-02-21T18:30:52+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}], "has_more": + true}' headers: cache-control: - private, no-cache, no-store content-length: - - '2337' + - '2804' content-type: - application/json; charset=utf-8 - etag: - - W/"24187a6346a5cc313c97db39a6a953ae" expires: - '0' pragma: @@ -183,20 +178,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b51645e93dee2cc316100061fd7 + - 4a484c0c67c9fbc9e2b9771400188c94 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '4.955250' + - '0.035805' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_retrieve.yaml b/tests/cassettes/test_address_retrieve.yaml index f6db3cac..7a641c77 100644 --- a/tests/cassettes/test_address_retrieve.yaml +++ b/tests/cassettes/test_address_retrieve.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_78e6a91af0fb11ed8048ac1f6bc72124", "object": "Address", - "created_at": "2023-05-12T19:30:37+00:00", "updated_at": "2023-05-12T19:30:37+00:00", + string: '{"id": "adr_d128ff74fac311efa7a7ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -36,12 +36,10 @@ interactions: - '461' content-type: - application/json; charset=utf-8 - etag: - - W/"73a77bd69e7f84c0bc1d235ca7bed363" expires: - '0' location: - - /api/v2/addresses/adr_78e6a91af0fb11ed8048ac1f6bc72124 + - /api/v2/addresses/adr_d128ff74fac311efa7a7ac1f6bc539ae pragma: - no-cache referrer-policy: @@ -57,21 +55,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870b645e93dde2cc315f0005fca8 + - 4a484c0a67c9fbc8e2b9771200188bfc x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.033244' + - '0.037012' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -91,11 +88,11 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/addresses/adr_78e6a91af0fb11ed8048ac1f6bc72124 + uri: https://api.easypost.com/v2/addresses/adr_d128ff74fac311efa7a7ac1f6bc539ae response: body: - string: '{"id": "adr_78e6a91af0fb11ed8048ac1f6bc72124", "object": "Address", - "created_at": "2023-05-12T19:30:37+00:00", "updated_at": "2023-05-12T19:30:37+00:00", + string: '{"id": "adr_d128ff74fac311efa7a7ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:20+00:00", "updated_at": "2025-03-06T19:47:20+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -108,8 +105,6 @@ interactions: - '461' content-type: - application/json; charset=utf-8 - etag: - - W/"73a77bd69e7f84c0bc1d235ca7bed363" expires: - '0' pragma: @@ -127,21 +122,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870b645e93dde2cc315f0005fcbd + - 4a484c0a67c9fbc8e2b9771200188c22 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.024342' + - '0.027362' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_verify.yaml b/tests/cassettes/test_address_verify.yaml index 6c65a14b..baef9af2 100644 --- a/tests/cassettes/test_address_verify.yaml +++ b/tests/cassettes/test_address_verify.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_7c5de6e9f0fb11eda8d9ac1f6bc7bdc6", "object": "Address", - "created_at": "2023-05-12T19:30:43+00:00", "updated_at": "2023-05-12T19:30:43+00:00", + string: '{"id": "adr_d188b93cfac311efbc54ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-06T19:47:21+00:00", "updated_at": "2025-03-06T19:47:21+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -36,12 +36,10 @@ interactions: - '461' content-type: - application/json; charset=utf-8 - etag: - - W/"044c35dcbccc26be7ff50080c2ea6864" expires: - '0' location: - - /api/v2/addresses/adr_7c5de6e9f0fb11eda8d9ac1f6bc7bdc6 + - /api/v2/addresses/adr_d188b93cfac311efbc54ac1f6bc539aa pragma: - no-cache referrer-policy: @@ -57,20 +55,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00c645e93e3e2cc31790005d41e + - 4a484c1067c9fbc9e2b9771500188cc6 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.047591' + - '0.033082' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -90,11 +88,11 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/addresses/adr_7c5de6e9f0fb11eda8d9ac1f6bc7bdc6/verify + uri: https://api.easypost.com/v2/addresses/adr_d188b93cfac311efbc54ac1f6bc539aa/verify response: body: - string: '{"address": {"id": "adr_7c71d8d3f0fb11edb623ac1f6bc7b362", "object": - "Address", "created_at": "2023-05-12T19:30:43+00:00", "updated_at": "2023-05-12T19:30:43+00:00", + string: '{"address": {"id": "adr_d1989bbffac311efbc56ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:47:21+00:00", "updated_at": "2025-03-06T19:47:21+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -109,12 +107,10 @@ interactions: - '658' content-type: - application/json; charset=utf-8 - etag: - - W/"fe16dfde6b818167414d10465e2a862d" expires: - '0' location: - - /api/v2/addresses/adr_7c71d8d3f0fb11edb623ac1f6bc7b362 + - /api/v2/addresses/adr_d1989bbffac311efbc56ac1f6bc539aa pragma: - no-cache referrer-policy: @@ -130,20 +126,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00c645e93e3e2cc31790005d42b + - 4a484c1067c9fbc9e2b9771500188ce2 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.054298' + - '0.056957' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_address_verify_invalid_address.yaml b/tests/cassettes/test_address_verify_invalid_address.yaml index eaaec6b7..ee621111 100644 --- a/tests/cassettes/test_address_verify_invalid_address.yaml +++ b/tests/cassettes/test_address_verify_invalid_address.yaml @@ -20,8 +20,8 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_7c8d2199f0fb11ed8e31ac1f6bc72124", "object": "Address", - "created_at": "2023-05-12T19:30:43+00:00", "updated_at": "2023-05-12T19:30:43+00:00", + string: '{"id": "adr_d1b02f48fac311efa7f0ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:21+00:00", "updated_at": "2025-03-06T19:47:21+00:00", "name": null, "company": null, "street1": "invalid", "street2": null, "city": null, "state": null, "zip": null, "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": @@ -33,12 +33,10 @@ interactions: - '403' content-type: - application/json; charset=utf-8 - etag: - - W/"ba83aca1454e0558f215c3d63669f85c" expires: - '0' location: - - /api/v2/addresses/adr_7c8d2199f0fb11ed8e31ac1f6bc72124 + - /api/v2/addresses/adr_d1b02f48fac311efa7f0ac1f6bc539ae pragma: - no-cache referrer-policy: @@ -54,20 +52,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00e645e93e3e2cc317b0005d43b + - 4a484c0a67c9fbc9e2b9771600188d17 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.034440' + - '0.038483' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -87,7 +85,7 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/addresses/adr_7c8d2199f0fb11ed8e31ac1f6bc72124/verify + uri: https://api.easypost.com/v2/addresses/adr_d1b02f48fac311efa7f0ac1f6bc539ae/verify response: body: string: '{"error": {"code": "ADDRESS.VERIFY.FAILURE", "message": "Unable to @@ -118,20 +116,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00e645e93e3e2cc317b0005d449 + - 4a484c0a67c9fbc9e2b9771600188d2d x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb2nuq 99aac35317 x-runtime: - - '0.032914' + - '0.043378' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_api_key_all.yaml b/tests/cassettes/test_api_key_all.yaml new file mode 100644 index 00000000..ef3dd0a9 --- /dev/null +++ b/tests/cassettes/test_api_key_all.yaml @@ -0,0 +1,93 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/api_keys + response: + body: + string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2022-02-24T20:59:05Z", "id": "ak_16f993eae7984eab94e0957a78bee407"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2022-02-24T20:59:14Z", "id": "ak_62524a9c3f684f65ab9eccbf70950df8"}], "children": + [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_90e045d452174b3e99198138dc7938f5"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_7ef472842fda4256b72779e74653ca79"}], "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2023-12-11T17:13:43Z", "id": "ak_726be943161e4028a347dd2389284d7d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2023-12-11T17:13:43Z", "id": "ak_dd9f2e1f14d342679191eee4b69b6ad0"}], + "children": []}, {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_e14b2c164b95497a8b9141b2ad212855"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_a35fabeaec96494694ec0c8726103a80"}], "children": + []}, {"id": "user_31754439d4524fbb8867d138de537e12", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_dffa08301f7d4a54895f7840d54d05e0"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_d386ae3ceee04b0880002cd39dca2587"}], "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2024-01-19T21:44:18Z", "id": "ak_92d46dfa461245bba1ec48aac1f2090d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2024-01-19T21:44:18Z", "id": "ak_8637c80064224594b9dfdf82efbb27b7"}], + "children": []}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2782' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbc9e2b9771700184c80 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb43nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.075092' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_api_key_authenticated_user.yaml b/tests/cassettes/test_api_key_authenticated_user.yaml new file mode 100644 index 00000000..7c9f3001 --- /dev/null +++ b/tests/cassettes/test_api_key_authenticated_user.yaml @@ -0,0 +1,177 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/users + response: + body: + string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2010' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62567c9fbc9e2b9771800184cb0 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb40nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.156923' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/api_keys + response: + body: + string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2022-02-24T20:59:05Z", "id": "ak_16f993eae7984eab94e0957a78bee407"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2022-02-24T20:59:14Z", "id": "ak_62524a9c3f684f65ab9eccbf70950df8"}], "children": + [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_90e045d452174b3e99198138dc7938f5"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_7ef472842fda4256b72779e74653ca79"}], "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2023-12-11T17:13:43Z", "id": "ak_726be943161e4028a347dd2389284d7d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2023-12-11T17:13:43Z", "id": "ak_dd9f2e1f14d342679191eee4b69b6ad0"}], + "children": []}, {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_e14b2c164b95497a8b9141b2ad212855"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_a35fabeaec96494694ec0c8726103a80"}], "children": + []}, {"id": "user_31754439d4524fbb8867d138de537e12", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_dffa08301f7d4a54895f7840d54d05e0"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_d386ae3ceee04b0880002cd39dca2587"}], "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2024-01-19T21:44:18Z", "id": "ak_92d46dfa461245bba1ec48aac1f2090d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2024-01-19T21:44:18Z", "id": "ak_8637c80064224594b9dfdf82efbb27b7"}], + "children": []}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2782' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62567c9fbcae2b9771800184ced + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb41nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.084904' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_child_user_api_keys.yaml b/tests/cassettes/test_api_key_lifecycle.yaml similarity index 57% rename from tests/cassettes/test_child_user_api_keys.yaml rename to tests/cassettes/test_api_key_lifecycle.yaml index 5ba20359..ed1aabba 100644 --- a/tests/cassettes/test_child_user_api_keys.yaml +++ b/tests/cassettes/test_api_key_lifecycle.yaml @@ -1,6 +1,6 @@ interactions: - request: - body: '{"user": {"name": "Test User"}}' + body: '{"mode": "production"}' headers: Accept: - '*/*' @@ -9,7 +9,7 @@ interactions: Connection: - keep-alive Content-Length: - - '31' + - '22' Content-Type: - application/json authorization: @@ -17,26 +17,18 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/users + uri: https://api.easypost.com/v2/api_keys response: body: - string: '{"id": "user_6ac14ce1d9844c8cb9650f4502882b74", "object": "User", "parent_id": - "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User", "phone_number": - "", "verified": true, "created_at": "2022-11-23T20:37:06Z", "default_carbon_offset": - false, "children": [], "api_keys": [{"object": "ApiKey", "key": "", - "mode": "test", "created_at": "2022-11-23T20:37:06Z", "active": true, "id": - "ak_03e2b1d2c5b840fd9353e3eb272f6cec"}, {"object": "ApiKey", "key": "", - "mode": "production", "created_at": "2022-11-23T20:37:06Z", "active": true, - "id": "ak_423eeac4dd0e4096a38c12e18acce5e3"}]}' + string: '{"object": "ApiKey", "key": "", "mode": "production", "created_at": + "2026-02-02T21:31:26Z", "active": true, "id": "ak_e87ac0a105ea4760a5df59a757230365"}' headers: cache-control: - private, no-cache, no-store content-length: - - '664' + - '199' content-type: - application/json; charset=utf-8 - etag: - - W/"d13733503625803c1ad19960defcb95a" expires: - '0' pragma: @@ -54,27 +46,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3dff6286637e8472e787bff8000e9df8 + - 2e56ccf3698117aee2bb247402d1e34b x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq 29913d444b - - extlb2nuq 29913d444b + - intlb4nuq d9379ca146 + - extlb2nuq cbbd141214 x-runtime: - - '0.694237' + - '0.111460' x-version-label: - - easypost-202211231902-b75422a88e-master + - easypost-202602022023-e2aafa4ad5-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: null + body: '{}' headers: Accept: - '*/*' @@ -82,27 +74,27 @@ interactions: - gzip, deflate Connection: - keep-alive + Content-Length: + - '2' + Content-Type: + - application/json authorization: - user-agent: - - method: GET - uri: https://api.easypost.com/v2/users/user_6ac14ce1d9844c8cb9650f4502882b74 + method: POST + uri: https://api.easypost.com/v2/api_keys/ak_e87ac0a105ea4760a5df59a757230365/disable response: body: - string: '{"id": "user_6ac14ce1d9844c8cb9650f4502882b74", "object": "User", "parent_id": - "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User", "phone_number": - "", "verified": true, "created_at": "2022-11-23T20:37:06Z", "default_carbon_offset": - false, "children": []}' + string: '{"object": "ApiKey", "key": "", "mode": "production", "created_at": + "2026-02-02T21:31:26Z", "active": false, "id": "ak_e87ac0a105ea4760a5df59a757230365"}' headers: cache-control: - private, no-cache, no-store content-length: - - '257' + - '200' content-type: - application/json; charset=utf-8 - etag: - - W/"5176ce0e22970d1a6dcfa66250114a47" expires: - '0' pragma: @@ -120,27 +112,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3dff6286637e8473e787bff8000e9e73 + - 2e56cced698117aee2bb247502d1e3ae x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq 29913d444b - - extlb2nuq 29913d444b + - intlb4nuq d9379ca146 + - extlb2nuq cbbd141214 x-runtime: - - '0.034930' + - '0.125884' x-version-label: - - easypost-202211231902-b75422a88e-master + - easypost-202602022023-e2aafa4ad5-master x-xss-protection: - 1; mode=block status: code: 200 message: OK - request: - body: null + body: '{}' headers: Accept: - '*/*' @@ -148,33 +140,27 @@ interactions: - gzip, deflate Connection: - keep-alive + Content-Length: + - '2' + Content-Type: + - application/json authorization: - user-agent: - - method: GET - uri: https://api.easypost.com/v2/api_keys + method: POST + uri: https://api.easypost.com/v2/api_keys/ak_e87ac0a105ea4760a5df59a757230365/enable response: body: - string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "keys": [{"object": - "ApiKey", "active": true, "key": "", "mode": "test", "created_at": - "2022-02-24T20:59:05Z", "id": "ak_16f993eae7984eab94e0957a78bee407"}, {"object": - "ApiKey", "active": true, "key": "", "mode": "production", "created_at": - "2022-02-24T20:59:14Z", "id": "ak_62524a9c3f684f65ab9eccbf70950df8"}], "children": - [{"id": "user_6ac14ce1d9844c8cb9650f4502882b74", "keys": [{"object": "ApiKey", - "active": true, "key": "", "mode": "test", "created_at": "2022-11-23T20:37:06Z", - "id": "ak_03e2b1d2c5b840fd9353e3eb272f6cec"}, {"object": "ApiKey", "active": - true, "key": "", "mode": "production", "created_at": "2022-11-23T20:37:06Z", - "id": "ak_423eeac4dd0e4096a38c12e18acce5e3"}], "children": []}]}' + string: '{"object": "ApiKey", "key": "", "mode": "production", "created_at": + "2026-02-02T21:31:26Z", "active": true, "id": "ak_e87ac0a105ea4760a5df59a757230365"}' headers: cache-control: - private, no-cache, no-store content-length: - - '926' + - '199' content-type: - application/json; charset=utf-8 - etag: - - W/"5209613f3e9233c508698b6e3703b4b0" expires: - '0' pragma: @@ -192,20 +178,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3dff6286637e8473e787bff8000e9e84 + - 2e56ccee698117afe2bb247602d1e40f x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq 29913d444b - - extlb2nuq 29913d444b + - intlb6nuq d9379ca146 + - extlb2nuq cbbd141214 x-runtime: - - '0.038706' + - '0.120192' x-version-label: - - easypost-202211231902-b75422a88e-master + - easypost-202602022023-e2aafa4ad5-master x-xss-protection: - 1; mode=block status: @@ -227,7 +213,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/users/user_6ac14ce1d9844c8cb9650f4502882b74 + uri: https://api.easypost.com/v2/api_keys/ak_e87ac0a105ea4760a5df59a757230365 response: body: string: '' @@ -249,20 +235,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3dff6286637e8473e787bff8000e9e95 + - 2e56ccf1698117afe2bb247702d1e476 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq 29913d444b - - extlb2nuq 29913d444b + - intlb4nuq d9379ca146 + - extlb2nuq cbbd141214 x-runtime: - - '0.120697' + - '0.105366' x-version-label: - - easypost-202211231902-b75422a88e-master + - easypost-202602022023-e2aafa4ad5-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_api_key_retrieve_authenticated_user.yaml b/tests/cassettes/test_api_key_retrieve_authenticated_user.yaml new file mode 100644 index 00000000..f49d1064 --- /dev/null +++ b/tests/cassettes/test_api_key_retrieve_authenticated_user.yaml @@ -0,0 +1,177 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/users + response: + body: + string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2010' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 2e56ccf0698116b8e2bb1c7902d05b35 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb41nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq d9379ca146 + - extlb2nuq cbbd141214 + x-runtime: + - '0.148339' + x-version-label: + - easypost-202602022023-e2aafa4ad5-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/api_keys + response: + body: + string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2022-02-24T20:59:05Z", "id": "ak_16f993eae7984eab94e0957a78bee407"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2022-02-24T20:59:14Z", "id": "ak_62524a9c3f684f65ab9eccbf70950df8"}], "children": + [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_90e045d452174b3e99198138dc7938f5"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_7ef472842fda4256b72779e74653ca79"}], "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2023-12-11T17:13:43Z", "id": "ak_726be943161e4028a347dd2389284d7d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2023-12-11T17:13:43Z", "id": "ak_dd9f2e1f14d342679191eee4b69b6ad0"}], + "children": []}, {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_e14b2c164b95497a8b9141b2ad212855"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_a35fabeaec96494694ec0c8726103a80"}], "children": + []}, {"id": "user_31754439d4524fbb8867d138de537e12", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_dffa08301f7d4a54895f7840d54d05e0"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_d386ae3ceee04b0880002cd39dca2587"}], "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2024-01-19T21:44:18Z", "id": "ak_92d46dfa461245bba1ec48aac1f2090d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2024-01-19T21:44:18Z", "id": "ak_8637c80064224594b9dfdf82efbb27b7"}], + "children": []}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2782' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 2e56ccef698116b9e2bb1c7c02d05ba9 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb38nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb6nuq d9379ca146 + - extlb2nuq cbbd141214 + x-runtime: + - '0.086400' + x-version-label: + - easypost-202602022023-e2aafa4ad5-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_api_key_retrieve_child_user.yaml b/tests/cassettes/test_api_key_retrieve_child_user.yaml new file mode 100644 index 00000000..97593c55 --- /dev/null +++ b/tests/cassettes/test_api_key_retrieve_child_user.yaml @@ -0,0 +1,289 @@ +interactions: +- request: + body: '{"user": {"name": "Test User"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '31' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/users + response: + body: + string: '{"id": "user_7b18c25890924f8ab96848aa3efc2765", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User", "phone_number": + "", "verified": true, "created_at": "2025-03-06T19:47:22Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": [], "api_keys": [{"object": + "ApiKey", "key": "", "mode": "test", "created_at": "2025-03-06T19:47:22Z", + "active": true, "id": "ak_0b4bbaf6145c4a4e991fd91ae6d8512b"}, {"object": "ApiKey", + "key": "", "mode": "production", "created_at": "2025-03-06T19:47:22Z", + "active": true, "id": "ak_4ac13156665942c99bbe31bab7cdb0da"}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '691' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbcae2b9771900184d24 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb53nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.516833' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/users/user_7b18c25890924f8ab96848aa3efc2765 + response: + body: + string: '{"id": "user_7b18c25890924f8ab96848aa3efc2765", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User", "phone_number": + "", "verified": true, "created_at": "2025-03-06T19:47:22Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '284' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbcae2b9771900184dd9 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb38nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.096345' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/api_keys + response: + body: + string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2022-02-24T20:59:05Z", "id": "ak_16f993eae7984eab94e0957a78bee407"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2022-02-24T20:59:14Z", "id": "ak_62524a9c3f684f65ab9eccbf70950df8"}], "children": + [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_90e045d452174b3e99198138dc7938f5"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2023-12-11T17:13:38Z", + "id": "ak_7ef472842fda4256b72779e74653ca79"}], "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2023-12-11T17:13:43Z", "id": "ak_726be943161e4028a347dd2389284d7d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2023-12-11T17:13:43Z", "id": "ak_dd9f2e1f14d342679191eee4b69b6ad0"}], + "children": []}, {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_e14b2c164b95497a8b9141b2ad212855"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2024-01-04T19:56:21Z", "id": "ak_a35fabeaec96494694ec0c8726103a80"}], "children": + []}, {"id": "user_31754439d4524fbb8867d138de537e12", "keys": [{"object": "ApiKey", + "active": true, "key": "", "mode": "test", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_dffa08301f7d4a54895f7840d54d05e0"}, {"object": "ApiKey", "active": + true, "key": "", "mode": "production", "created_at": "2024-01-19T21:42:21Z", + "id": "ak_d386ae3ceee04b0880002cd39dca2587"}], "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", + "keys": [{"object": "ApiKey", "active": true, "key": "", "mode": + "test", "created_at": "2024-01-19T21:44:18Z", "id": "ak_92d46dfa461245bba1ec48aac1f2090d"}, + {"object": "ApiKey", "active": true, "key": "", "mode": "production", + "created_at": "2024-01-19T21:44:18Z", "id": "ak_8637c80064224594b9dfdf82efbb27b7"}], + "children": []}, {"id": "user_7b18c25890924f8ab96848aa3efc2765", "keys": [{"object": + "ApiKey", "active": true, "key": "", "mode": "test", "created_at": + "2025-03-06T19:47:22Z", "id": "ak_0b4bbaf6145c4a4e991fd91ae6d8512b"}, {"object": + "ApiKey", "active": true, "key": "", "mode": "production", "created_at": + "2025-03-06T19:47:22Z", "id": "ak_4ac13156665942c99bbe31bab7cdb0da"}], "children": + []}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '3246' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbcbe2b9771900184e0f + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb38nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.103280' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/users/user_7b18c25890924f8ab96848aa3efc2765 + response: + body: + string: '' + headers: + cache-control: + - private, no-cache, no-store + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbcbe2b9771900184e39 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb33nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.091880' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 204 + message: No Content +version: 1 diff --git a/tests/cassettes/test_batch_add_remove_shipment.yaml b/tests/cassettes/test_batch_add_remove_shipment.yaml index 31ca7bd6..f479284b 100644 --- a/tests/cassettes/test_batch_add_remove_shipment.yaml +++ b/tests/cassettes/test_batch_add_remove_shipment.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-12T19:30:45Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262209120052", "updated_at": "2023-05-12T19:30:46Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_7db7da8bf0fb11ed92bbac1f6bc72124", "object": "Address", "created_at": - "2023-05-12T19:30:45+00:00", "updated_at": "2023-05-12T19:30:45+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_4ecc88df16394f2486d0344062fcdffd", - "object": "Parcel", "created_at": "2023-05-12T19:30:45Z", "updated_at": "2023-05-12T19:30:45Z", + string: '{"id": "shp_243d43abc8d0484cbe01b684e76d20d5", "created_at": "2025-03-06T19:47:39Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109500645", "updated_at": + "2025-03-06T19:47:40Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_dca13f48fac311ef81f9ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:47:39+00:00", "updated_at": + "2025-03-06T19:47:39+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_011650c305ca44308b92d7cc35f30426", "object": + "Parcel", "created_at": "2025-03-06T19:47:39Z", "updated_at": "2025-03-06T19:47:39Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_6eed3126506944cd9a29b642445a066c", - "created_at": "2023-05-12T19:30:46Z", "updated_at": "2023-05-12T19:30:46Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-12T19:30:46Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d3a08d7159604f76b4356face3f3fd19", + "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:40Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:47:40Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230512/7736c388a3af43e6ae9e70ad698e3770.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e8c546c95c7af94bcab23bc8aae8819c07.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_1335eb5c26a54e2faaea7a4a6ee40443", "object": - "Rate", "created_at": "2023-05-12T19:30:45Z", "updated_at": "2023-05-12T19:30:45Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_1b408c39c0da44f09703bcebc8f2d4d4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_c567ef417ad844ada9ff78a1f98c0163", "object": "Rate", "created_at": - "2023-05-12T19:30:45Z", "updated_at": "2023-05-12T19:30:45Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_1b408c39c0da44f09703bcebc8f2d4d4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_c718d808735e48f4b2e6641e41a3b34c", "object": "Rate", "created_at": - "2023-05-12T19:30:45Z", "updated_at": "2023-05-12T19:30:45Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_1b408c39c0da44f09703bcebc8f2d4d4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_e707af71bd3e4e448c427bae57e12cd1", "object": "Rate", "created_at": - "2023-05-12T19:30:45Z", "updated_at": "2023-05-12T19:30:45Z", "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_1b408c39c0da44f09703bcebc8f2d4d4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_1335eb5c26a54e2faaea7a4a6ee40443", - "object": "Rate", "created_at": "2023-05-12T19:30:46Z", "updated_at": "2023-05-12T19:30:46Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_1b408c39c0da44f09703bcebc8f2d4d4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_9e4f5b21d296400ba5463811a3dd6f00", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262209120052", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-12T19:30:46Z", "updated_at": - "2023-05-12T19:30:46Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_1b408c39c0da44f09703bcebc8f2d4d4", "carrier": "USPS", + null}, "rates": [{"id": "rate_502b242d978d402ca45ceb485dc7ae6e", "object": + "Rate", "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:40Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_243d43abc8d0484cbe01b684e76d20d5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_36fcb1e13dd54924bbadb3396b3762cc", + "object": "Rate", "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:40Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_243d43abc8d0484cbe01b684e76d20d5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_1b8743bad96a42f99fbb090396865a69", + "object": "Rate", "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:40Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_243d43abc8d0484cbe01b684e76d20d5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_1b8743bad96a42f99fbb090396865a69", "object": + "Rate", "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:40Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_243d43abc8d0484cbe01b684e76d20d5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_2d529ff81346463598d28ca891bce7b2", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500645", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:47:40Z", + "updated_at": "2025-03-06T19:47:40Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_243d43abc8d0484cbe01b684e76d20d5", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzllNGY1YjIxZDI5NjQwMGJhNTQ2MzgxMWEzZGQ2ZjAw"}, - "to_address": {"id": "adr_7db53057f0fb11edbaf9ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-12T19:30:45+00:00", "updated_at": "2023-05-12T19:30:45+00:00", + "https://track.easypost.com/djE6dHJrXzJkNTI5ZmY4MTM0NjQ2MzU5OGQyOGNhODkxYmNlN2Iy"}, + "to_address": {"id": "adr_dc9d24b6fac311efa3153cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:47:39+00:00", "updated_at": "2025-03-06T19:47:40+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_7db7da8bf0fb11ed92bbac1f6bc72124", - "object": "Address", "created_at": "2023-05-12T19:30:45+00:00", "updated_at": - "2023-05-12T19:30:45+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_dca13f48fac311ef81f9ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:47:39+00:00", "updated_at": + "2025-03-06T19:47:39+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_7db53057f0fb11edbaf9ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-12T19:30:45+00:00", "updated_at": "2023-05-12T19:30:45+00:00", "name": + "adr_dc9d24b6fac311efa3153cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:47:39+00:00", "updated_at": "2025-03-06T19:47:40+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_1b408c39c0da44f09703bcebc8f2d4d4", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"fed31f5b3658bccf62db9c95df6cfb04" expires: - '0' location: - - /api/v2/shipments/shp_1b408c39c0da44f09703bcebc8f2d4d4 + - /api/v2/shipments/shp_243d43abc8d0484cbe01b684e76d20d5 pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b55645e93e5e2cc31820006231b + - 8e8eb62b67c9fbdbe2b9773600186193 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '1.073051' + - '0.999460' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -186,9 +178,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_7c95d5d8bfd247d1981ffdfdf2ee32d5", "object": "Batch", + string: '{"id": "batch_25eeafb7c1d8478bbf67cf6c0a095b20", "object": "Batch", "mode": "test", "state": "created", "num_shipments": 0, "reference": null, - "created_at": "2023-05-12T19:30:46Z", "updated_at": "2023-05-12T19:30:46Z", + "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:40Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -199,8 +191,6 @@ interactions: - '383' content-type: - application/json; charset=utf-8 - etag: - - W/"248d39ef72fc9c8e05ee7b42e56d4c8d" expires: - '0' pragma: @@ -213,34 +203,32 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 52975b55645e93e6e2cc318200062379 + - 8e8eb62b67c9fbdce2b97736001862c9 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.044823' + - '0.034967' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: code: 200 message: OK - request: - body: '{"shipments": [{"id": "shp_1b408c39c0da44f09703bcebc8f2d4d4"}]}' + body: '{"shipments": [{"id": "shp_243d43abc8d0484cbe01b684e76d20d5"}]}' headers: Accept: - '*/*' @@ -257,15 +245,15 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/batches/batch_7c95d5d8bfd247d1981ffdfdf2ee32d5/add_shipments + uri: https://api.easypost.com/v2/batches/batch_25eeafb7c1d8478bbf67cf6c0a095b20/add_shipments response: body: - string: '{"id": "batch_7c95d5d8bfd247d1981ffdfdf2ee32d5", "object": "Batch", + string: '{"id": "batch_25eeafb7c1d8478bbf67cf6c0a095b20", "object": "Batch", "mode": "test", "state": "created", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:30:46Z", "updated_at": "2023-05-12T19:30:46Z", + "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:40Z", "scan_form": null, "shipments": [{"batch_status": "postage_purchased", "batch_message": - null, "reference": null, "tracking_code": "9400100104262209120052", "id": - "shp_1b408c39c0da44f09703bcebc8f2d4d4"}], "status": {"created": 0, "queued_for_purchase": + null, "reference": null, "tracking_code": "9400100208303109500645", "id": + "shp_243d43abc8d0484cbe01b684e76d20d5"}], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 1, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' headers: @@ -275,8 +263,6 @@ interactions: - '542' content-type: - application/json; charset=utf-8 - etag: - - W/"bc6ff30d99ea814213b07eda8c207004" expires: - '0' pragma: @@ -294,27 +280,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b55645e93e6e2cc318200062383 + - 8e8eb62b67c9fbdce2b97736001862e5 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.123487' + - '0.050961' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: code: 200 message: OK - request: - body: '{"shipments": [{"id": "shp_1b408c39c0da44f09703bcebc8f2d4d4"}]}' + body: '{"shipments": [{"id": "shp_243d43abc8d0484cbe01b684e76d20d5"}]}' headers: Accept: - '*/*' @@ -331,12 +317,12 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/batches/batch_7c95d5d8bfd247d1981ffdfdf2ee32d5/remove_shipments + uri: https://api.easypost.com/v2/batches/batch_25eeafb7c1d8478bbf67cf6c0a095b20/remove_shipments response: body: - string: '{"id": "batch_7c95d5d8bfd247d1981ffdfdf2ee32d5", "object": "Batch", + string: '{"id": "batch_25eeafb7c1d8478bbf67cf6c0a095b20", "object": "Batch", "mode": "test", "state": "purchased", "num_shipments": 0, "reference": null, - "created_at": "2023-05-12T19:30:46Z", "updated_at": "2023-05-12T19:30:46Z", + "created_at": "2025-03-06T19:47:40Z", "updated_at": "2025-03-06T19:47:41Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -347,8 +333,6 @@ interactions: - '385' content-type: - application/json; charset=utf-8 - etag: - - W/"0dd133284f20cbc85b0ec83482863cfa" expires: - '0' pragma: @@ -366,20 +350,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b55645e93e7e2cc3182000623a7 + - 8e8eb62b67c9fbdde2b9773600186330 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.052476' + - '0.036024' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_batch_all.yaml b/tests/cassettes/test_batch_all.yaml index 3145720f..7d026910 100644 --- a/tests/cassettes/test_batch_all.yaml +++ b/tests/cassettes/test_batch_all.yaml @@ -16,18 +16,18 @@ interactions: uri: https://api.easypost.com/v2/batches?page_size=5 response: body: - string: '{"batches": [{"id": "batch_5c5da8c23c3c48549a381da43d7ef9f9", "object": + string: '{"batches": [{"id": "batch_714d7667a73f450eb169b20c1425c6a2", "object": "Batch", "mode": "test", "state": "created", "num_shipments": 1, "reference": - null, "created_at": "2023-05-12T19:30:43Z", "updated_at": "2023-05-12T19:30:43Z", + null, "created_at": "2025-03-06T19:47:23Z", "updated_at": "2025-03-06T19:47:23Z", "scan_form": null, "shipments": [{"batch_status": "created", "batch_message": - null, "reference": null, "tracking_code": null, "id": "shp_be5a45be490a4ecfb4b6bf89b5d97efa"}], + null, "reference": null, "tracking_code": null, "id": "shp_18722621622046f48c2314f4624c5746"}], "status": {"created": 1, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}, {"id": - "batch_78252d9d1e6046b5953baf4f54832904", "object": "Batch", "mode": "test", - "state": "created", "num_shipments": 1, "reference": null, "created_at": "2023-05-12T19:30:43Z", - "updated_at": "2023-05-12T19:30:44Z", "scan_form": null, "shipments": [{"batch_status": + "batch_af1a8a3cfc1f444d961e620e2ade0f7a", "object": "Batch", "mode": "test", + "state": "created", "num_shipments": 1, "reference": null, "created_at": "2025-03-06T19:47:23Z", + "updated_at": "2025-03-06T19:47:23Z", "scan_form": null, "shipments": [{"batch_status": "created", "batch_message": null, "reference": null, "tracking_code": null, - "id": "shp_06fd2424f27244cd9d9085bc73110767"}], "status": {"created": 1, "queued_for_purchase": + "id": "shp_60e1b0b799e74382b16366ba261282f3"}], "status": {"created": 1, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}], "has_more": false}' headers: @@ -37,8 +37,6 @@ interactions: - '1056' content-type: - application/json; charset=utf-8 - etag: - - W/"5387c1f56a6184a4fdf9febc72dd3ad0" expires: - '0' pragma: @@ -51,27 +49,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 52975b53645e93e4e2cc317e000622b3 + - 8e8eb62967c9fbcbe2b9773300184edf x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.125052' + - '0.156418' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_batch_buy.yaml b/tests/cassettes/test_batch_buy.yaml index 12b7ef6f..7e891085 100644 --- a/tests/cassettes/test_batch_buy.yaml +++ b/tests/cassettes/test_batch_buy.yaml @@ -6,7 +6,7 @@ interactions: "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": "USPS"}]}}' headers: Accept: @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '610' + - '620' Content-Type: - application/json authorization: @@ -27,9 +27,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_2240b6c1bc1c49b3a4b2badbb8e9e9e7", "object": "Batch", + string: '{"id": "batch_a3e18200e5104896874b4af64a3dde38", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:31:50Z", "updated_at": "2023-05-12T19:31:50Z", + "created_at": "2025-03-06T19:47:24Z", "updated_at": "2025-03-06T19:47:24Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -40,8 +40,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"ab7b3bf2969bc24189e0a36747555ce1" expires: - '0' pragma: @@ -54,25 +52,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 52975b4f645e9426e2cc34b700063a1f + - 8e8eb62667c9fbcce2b9773400184f42 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.073478' + - '0.048992' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -96,14 +96,14 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/batches/batch_2240b6c1bc1c49b3a4b2badbb8e9e9e7/buy + uri: https://api.easypost.com/v2/batches/batch_a3e18200e5104896874b4af64a3dde38/buy response: body: - string: '{"id": "batch_2240b6c1bc1c49b3a4b2badbb8e9e9e7", "object": "Batch", + string: '{"id": "batch_a3e18200e5104896874b4af64a3dde38", "object": "Batch", "mode": "test", "state": "created", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:31:50Z", "updated_at": "2023-05-12T19:31:50Z", + "created_at": "2025-03-06T19:47:24Z", "updated_at": "2025-03-06T19:47:24Z", "scan_form": null, "shipments": [{"batch_status": "queued_for_purchase", "batch_message": - null, "reference": null, "tracking_code": null, "id": "shp_b4d8d4d339f64628b8f5adc4cd8513b9"}], + null, "reference": null, "tracking_code": null, "id": "shp_fd3accc750604a3c9fa45e16b61af49b"}], "status": {"created": 1, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' headers: @@ -113,8 +113,6 @@ interactions: - '524' content-type: - application/json; charset=utf-8 - etag: - - W/"5d868683ed7a0625d8eeb48f4756c45f" expires: - '0' pragma: @@ -132,20 +130,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b4f645e942be2cc34b700063c6d + - 8e8eb62667c9fbd1e2b97734001855c5 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb33nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.055698' + - '0.050381' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_batch_create.yaml b/tests/cassettes/test_batch_create.yaml index 8d9a59f9..8a83a47e 100644 --- a/tests/cassettes/test_batch_create.yaml +++ b/tests/cassettes/test_batch_create.yaml @@ -6,7 +6,7 @@ interactions: "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": "USPS"}]}}' headers: Accept: @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '610' + - '620' Content-Type: - application/json authorization: @@ -27,9 +27,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_5c5da8c23c3c48549a381da43d7ef9f9", "object": "Batch", + string: '{"id": "batch_714d7667a73f450eb169b20c1425c6a2", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:30:43Z", "updated_at": "2023-05-12T19:30:43Z", + "created_at": "2025-03-06T19:47:23Z", "updated_at": "2025-03-06T19:47:23Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -40,8 +40,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"e524acc3c8f610239b800f5ddb62d104" expires: - '0' pragma: @@ -54,27 +52,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00c645e93e3e2cc317c0005d45c + - 8e8eb62a67c9fbcbe2b9773100184e69 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.039433' + - '0.040101' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_batch_create_and_buy.yaml b/tests/cassettes/test_batch_create_and_buy.yaml deleted file mode 100644 index 28f44639..00000000 --- a/tests/cassettes/test_batch_create_and_buy.yaml +++ /dev/null @@ -1,88 +0,0 @@ -interactions: -- request: - body: '{"batch": {"shipments": [{"to_address": {"name": "Jack Sparrow", "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", - "zip": "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, - "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": - "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, {"to_address": {"name": "Jack Sparrow", "street1": "388 - Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": - "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, - "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": - "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}]}}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '1194' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/batches/create_and_buy - response: - body: - string: '{"id": "batch_8122884150284dbe91a723679df2f67f", "object": "Batch", - "mode": "test", "state": "creating", "num_shipments": 2, "reference": null, - "created_at": "2023-05-12T19:30:44Z", "updated_at": "2023-05-12T19:30:44Z", - "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": - 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": - 0}, "pickup": null, "label_url": null}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '384' - content-type: - - application/json; charset=utf-8 - etag: - - W/"5c3d65ef5c3db7c880dc9d64a3975068" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 52975b55645e93e4e2cc317f000622cf - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb2nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '0.047490' - x-version-label: - - easypost-202305121849-b449e9bf47-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/test_batch_create_scanform.yaml b/tests/cassettes/test_batch_create_scanform.yaml index 0af3ed35..01394a69 100644 --- a/tests/cassettes/test_batch_create_scanform.yaml +++ b/tests/cassettes/test_batch_create_scanform.yaml @@ -6,7 +6,7 @@ interactions: "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": "USPS"}]}}' headers: Accept: @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '610' + - '620' Content-Type: - application/json authorization: @@ -27,9 +27,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_93bbd242fffd456899d0874728667ca6", "object": "Batch", + string: '{"id": "batch_79b95699e2644f198db68d1824c11497", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:37:43Z", "updated_at": "2023-05-12T19:37:43Z", + "created_at": "2025-03-06T19:47:29Z", "updated_at": "2025-03-06T19:47:29Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -40,8 +40,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"93ab1778229106e6edb4001de85fa9da" expires: - '0' pragma: @@ -59,21 +57,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870e645e9587e2cc393e0006837f + - 8e8eb62967c9fbd1e2b97735001855fc x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.059158' + - '0.038535' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -97,14 +94,14 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/batches/batch_93bbd242fffd456899d0874728667ca6/buy + uri: https://api.easypost.com/v2/batches/batch_79b95699e2644f198db68d1824c11497/buy response: body: - string: '{"id": "batch_93bbd242fffd456899d0874728667ca6", "object": "Batch", + string: '{"id": "batch_79b95699e2644f198db68d1824c11497", "object": "Batch", "mode": "test", "state": "created", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:37:43Z", "updated_at": "2023-05-12T19:37:43Z", + "created_at": "2025-03-06T19:47:29Z", "updated_at": "2025-03-06T19:47:29Z", "scan_form": null, "shipments": [{"batch_status": "queued_for_purchase", "batch_message": - null, "reference": null, "tracking_code": null, "id": "shp_f7c53eb6f8c448b484c47ebfdcdfb3d6"}], + null, "reference": null, "tracking_code": null, "id": "shp_042b8633dd58412899313410cd5ad5a7"}], "status": {"created": 1, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' headers: @@ -114,8 +111,6 @@ interactions: - '524' content-type: - application/json; charset=utf-8 - etag: - - W/"cb99d8099e24e4837641bdca715153d8" expires: - '0' pragma: @@ -133,21 +128,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870e645e958ce2cc393e000684e0 + - 8e8eb62967c9fbd6e2b9773500185b86 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.052865' + - '0.051630' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -171,19 +165,19 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/batches/batch_93bbd242fffd456899d0874728667ca6/scan_form + uri: https://api.easypost.com/v2/batches/batch_79b95699e2644f198db68d1824c11497/scan_form response: body: - string: '{"id": "batch_93bbd242fffd456899d0874728667ca6", "object": "Batch", + string: '{"id": "batch_79b95699e2644f198db68d1824c11497", "object": "Batch", "mode": "test", "state": "purchased", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:37:43Z", "updated_at": "2023-05-12T19:37:53Z", - "scan_form": {"id": "sf_e797f779358a41eeacdf12f050f4f736", "object": "ScanForm", - "created_at": "2023-05-12T19:37:53Z", "updated_at": "2023-05-12T19:37:53Z", + "created_at": "2025-03-06T19:47:29Z", "updated_at": "2025-03-06T19:47:39Z", + "scan_form": {"id": "sf_a1082a2498034042a96617a8d79ff0c4", "object": "ScanForm", + "created_at": "2025-03-06T19:47:39Z", "updated_at": "2025-03-06T19:47:39Z", "tracking_codes": [], "address": null, "status": "creating", "message": null, - "form_url": null, "form_file_type": null, "batch_id": "batch_93bbd242fffd456899d0874728667ca6", + "form_url": null, "form_file_type": null, "batch_id": "batch_79b95699e2644f198db68d1824c11497", "confirmation": null}, "shipments": [{"batch_status": "postage_purchased", - "batch_message": null, "reference": null, "tracking_code": "9400100104262209121370", - "id": "shp_f7c53eb6f8c448b484c47ebfdcdfb3d6"}], "status": {"created": 0, "queued_for_purchase": + "batch_message": null, "reference": null, "tracking_code": "9400100208303109500638", + "id": "shp_042b8633dd58412899313410cd5ad5a7"}], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 1, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' headers: @@ -193,8 +187,6 @@ interactions: - '856' content-type: - application/json; charset=utf-8 - etag: - - W/"016680b864fb54065c262c532515103f" expires: - '0' pragma: @@ -212,21 +204,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870e645e9591e2cc393e00068649 + - 8e8eb62967c9fbdbe2b9773500186158 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.060973' + - '0.072810' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_batch_label.yaml b/tests/cassettes/test_batch_label.yaml index 6b920e8d..13ffcda8 100644 --- a/tests/cassettes/test_batch_label.yaml +++ b/tests/cassettes/test_batch_label.yaml @@ -6,7 +6,7 @@ interactions: "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": "USPS"}]}}' headers: Accept: @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '610' + - '620' Content-Type: - application/json authorization: @@ -27,9 +27,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_7517f8f307b6418d82f298a8acb8856e", "object": "Batch", + string: '{"id": "batch_b09f402edaf0429491cc25c2d0c3238a", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:37:54Z", "updated_at": "2023-05-12T19:37:54Z", + "created_at": "2025-03-06T19:47:41Z", "updated_at": "2025-03-06T19:47:41Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -40,8 +40,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"6db3ca79164dabdbeed0dab337621d6f" expires: - '0' pragma: @@ -59,20 +57,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f010645e9592e2cc3956000662cf + - 8e8eb62b67c9fbdde2b977370018636c x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.039491' + - '0.043385' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -96,14 +94,14 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/batches/batch_7517f8f307b6418d82f298a8acb8856e/buy + uri: https://api.easypost.com/v2/batches/batch_b09f402edaf0429491cc25c2d0c3238a/buy response: body: - string: '{"id": "batch_7517f8f307b6418d82f298a8acb8856e", "object": "Batch", + string: '{"id": "batch_b09f402edaf0429491cc25c2d0c3238a", "object": "Batch", "mode": "test", "state": "created", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:37:54Z", "updated_at": "2023-05-12T19:37:54Z", + "created_at": "2025-03-06T19:47:41Z", "updated_at": "2025-03-06T19:47:41Z", "scan_form": null, "shipments": [{"batch_status": "queued_for_purchase", "batch_message": - null, "reference": null, "tracking_code": null, "id": "shp_9a9615e06531469db90ca8e74d4b2a6e"}], + null, "reference": null, "tracking_code": null, "id": "shp_597cb548f2fc49a59bcb5f735e518718"}], "status": {"created": 1, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' headers: @@ -113,8 +111,6 @@ interactions: - '524' content-type: - application/json; charset=utf-8 - etag: - - W/"9632619bcda010c0a517ec181e3f32e1" expires: - '0' pragma: @@ -132,20 +128,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f010645e9597e2cc395600066408 + - 8e8eb62b67c9fbe2e2b9773700186893 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.055580' + - '0.054727' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -169,15 +165,15 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/batches/batch_7517f8f307b6418d82f298a8acb8856e/label + uri: https://api.easypost.com/v2/batches/batch_b09f402edaf0429491cc25c2d0c3238a/label response: body: - string: '{"id": "batch_7517f8f307b6418d82f298a8acb8856e", "object": "Batch", + string: '{"id": "batch_b09f402edaf0429491cc25c2d0c3238a", "object": "Batch", "mode": "test", "state": "label_generating", "num_shipments": 1, "reference": - null, "created_at": "2023-05-12T19:37:54Z", "updated_at": "2023-05-12T19:38:04Z", + null, "created_at": "2025-03-06T19:47:41Z", "updated_at": "2025-03-06T19:47:51Z", "scan_form": null, "shipments": [{"batch_status": "postage_purchased", "batch_message": - null, "reference": null, "tracking_code": "9400100104262209121400", "id": - "shp_9a9615e06531469db90ca8e74d4b2a6e"}], "status": {"created": 0, "queued_for_purchase": + null, "reference": null, "tracking_code": "9400100208303109500652", "id": + "shp_597cb548f2fc49a59bcb5f735e518718"}], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 1, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' headers: @@ -187,8 +183,6 @@ interactions: - '551' content-type: - application/json; charset=utf-8 - etag: - - W/"79203232fcfe5764a3ebdb3eb6598c9f" expires: - '0' pragma: @@ -206,20 +200,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f010645e959ce2cc395600066558 + - 8e8eb62b67c9fbe7e2b9773700186dc6 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.032656' + - '0.035757' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_batch_retrieve.yaml b/tests/cassettes/test_batch_retrieve.yaml index 9f30d5f9..b8b83d08 100644 --- a/tests/cassettes/test_batch_retrieve.yaml +++ b/tests/cassettes/test_batch_retrieve.yaml @@ -6,7 +6,7 @@ interactions: "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": "USPS"}]}}' headers: Accept: @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '610' + - '620' Content-Type: - application/json authorization: @@ -27,9 +27,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_78252d9d1e6046b5953baf4f54832904", "object": "Batch", + string: '{"id": "batch_af1a8a3cfc1f444d961e620e2ade0f7a", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:30:43Z", "updated_at": "2023-05-12T19:30:43Z", + "created_at": "2025-03-06T19:47:23Z", "updated_at": "2025-03-06T19:47:23Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -40,8 +40,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"1bd327d381d9729dc30904f4c74daa25" expires: - '0' pragma: @@ -54,27 +52,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00e645e93e3e2cc317d0005d468 + - 8e8eb62667c9fbcbe2b9773200184e8d x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.082975' + - '0.042310' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -94,12 +90,12 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/batches/batch_78252d9d1e6046b5953baf4f54832904 + uri: https://api.easypost.com/v2/batches/batch_af1a8a3cfc1f444d961e620e2ade0f7a response: body: - string: '{"id": "batch_78252d9d1e6046b5953baf4f54832904", "object": "Batch", + string: '{"id": "batch_af1a8a3cfc1f444d961e620e2ade0f7a", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-12T19:30:43Z", "updated_at": "2023-05-12T19:30:43Z", + "created_at": "2025-03-06T19:47:23Z", "updated_at": "2025-03-06T19:47:23Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -110,8 +106,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"1bd327d381d9729dc30904f4c74daa25" expires: - '0' pragma: @@ -124,25 +118,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00e645e93e4e2cc317d0005d472 + - 8e8eb62667c9fbcbe2b9773200184ea8 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.022538' + - '0.023351' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_beta_get_lowest_stateless_rate.yaml b/tests/cassettes/test_beta_get_lowest_stateless_rate.yaml index a95cb160..62fcd32a 100644 --- a/tests/cassettes/test_beta_get_lowest_stateless_rate.yaml +++ b/tests/cassettes/test_beta_get_lowest_stateless_rate.yaml @@ -32,50 +32,31 @@ interactions: "to_address": {"object": "Address", "name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": ""}, "rates": [{"object": + "Rate", "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": "Rate", "mode": "test", "service": "Priority", "carrier": "USPS", "rate": - "7.15", "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", - "list_rate": "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + "7.42", "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", + "list_rate": "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": - "Rate", "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", - "currency": "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": - "6.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + "Rate", "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": + "6.07", "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", + "list_rate": "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 3, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": - "Rate", "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": - "Rate", "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": - "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", - "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "options": + 3, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "parcel": {"object": "Parcel", "length": 10.0, "width": 8.0, "height": 4.0, "weight": - 15.4}, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}]}' + 15.4}, "messages": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '3061' + - '1705' content-type: - application/json; charset=utf-8 - etag: - - W/"a632bf86a8cc54e08cbb434aad731a39" expires: - '0' pragma: @@ -95,21 +76,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 477e8d7f64626272e786c9240019fd88 + - 8e8eb62a67c9fbe8e2b9777600186e36 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.648051' + - '0.116136' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_beta_referral_customer_add_payment_method.yaml b/tests/cassettes/test_beta_referral_customer_add_payment_method.yaml index 563cb9f0..fb9a31a3 100644 --- a/tests/cassettes/test_beta_referral_customer_add_payment_method.yaml +++ b/tests/cassettes/test_beta_referral_customer_add_payment_method.yaml @@ -22,12 +22,12 @@ interactions: response: body: string: '{"error": {"code": "BILLING.INVALID_PAYMENT_GATEWAY_REFERENCE", "message": - "Invalid Payment Gateway Reference.", "errors": []}}' + "Invalid connect integration.", "errors": []}}' headers: cache-control: - private, no-cache, no-store content-length: - - '121' + - '115' content-type: - application/json; charset=utf-8 expires: @@ -49,20 +49,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e06463d025e787d99f003405b1 + - 8e8eb62967c9fbe8e2b9777700186e76 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.048350' + - '0.036253' x-version-label: - - easypost-202305161731-3a88337a74-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_beta_referral_customer_create_bank_account_client_secret.yaml b/tests/cassettes/test_beta_referral_customer_create_bank_account_client_secret.yaml new file mode 100644 index 00000000..b6dcb767 --- /dev/null +++ b/tests/cassettes/test_beta_referral_customer_create_bank_account_client_secret.yaml @@ -0,0 +1,69 @@ +interactions: +- request: + body: '{}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/beta/financial_connections_sessions + response: + body: + string: '{"client_secret": "fcsess_client_secret_Pk6DPwMAJUC4q9Y6T05jS5cG"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '65' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - Origin + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 595be116677dbc1de2b8e9ec0053f5f4 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb35nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.599103' + x-version-label: + - easypost-202501062233-3c9302ef23-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_tracker_create_list.yaml b/tests/cassettes/test_beta_referral_customer_create_credit_card_client_secret.yaml similarity index 70% rename from tests/cassettes/test_tracker_create_list.yaml rename to tests/cassettes/test_beta_referral_customer_create_credit_card_client_secret.yaml index 8edfd0a8..df78cf32 100644 --- a/tests/cassettes/test_tracker_create_list.yaml +++ b/tests/cassettes/test_beta_referral_customer_create_credit_card_client_secret.yaml @@ -1,7 +1,6 @@ interactions: - request: - body: '{"trackers": {"0": {"tracking_code": "EZ1000000001"}, "1": {"tracking_code": - "EZ1000000002"}, "2": {"tracking_code": "EZ1000000003"}}}' + body: '{}' headers: Accept: - '*/*' @@ -10,7 +9,7 @@ interactions: Connection: - keep-alive Content-Length: - - '134' + - '2' Content-Type: - application/json authorization: @@ -18,19 +17,17 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/trackers/create_list + uri: https://api.easypost.com/beta/setup_intents response: body: - string: '{}' + string: '{"client_secret": "seti_0QemQjDqT4huGUvdEmRKe2Vr_secret_RXsBcDsHB0wqRfqUAicRZbJi5SgCVo8"}' headers: cache-control: - private, no-cache, no-store content-length: - - '2' + - '88' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -41,6 +38,8 @@ interactions: - max-age=31536000; includeSubDomains; preload transfer-encoding: - chunked + vary: + - Origin x-backend: - easypost x-content-type-options: @@ -48,20 +47,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e046463b2d4e787383f002bd784 + - 595be115677dbc1ce2b8e9eb0053f566 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb33nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.034050' + - '0.674861' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202501062233-3c9302ef23-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_beta_referral_customer_refund_by_amount.yaml b/tests/cassettes/test_beta_referral_customer_refund_by_amount.yaml index d2d69d5e..c1c307a2 100644 --- a/tests/cassettes/test_beta_referral_customer_refund_by_amount.yaml +++ b/tests/cassettes/test_beta_referral_customer_refund_by_amount.yaml @@ -49,20 +49,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e16463d025e787d9a0003405cc + - 8e8eb62b67c9fbe8e2b9777800186e8e x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.504008' + - '0.492218' x-version-label: - - easypost-202305161731-3a88337a74-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_beta_referral_customer_refund_by_payment_log.yaml b/tests/cassettes/test_beta_referral_customer_refund_by_payment_log.yaml index 44eaa9c4..b45aa98f 100644 --- a/tests/cassettes/test_beta_referral_customer_refund_by_payment_log.yaml +++ b/tests/cassettes/test_beta_referral_customer_refund_by_payment_log.yaml @@ -48,20 +48,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e36463d026e787d9a1003405fa + - 8e8eb62667c9fbe9e2b9777900186f3c x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.037008' + - '0.029665' x-version-label: - - easypost-202305161731-3a88337a74-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_beta_retrieve_carrier_metadata.yaml b/tests/cassettes/test_beta_retrieve_carrier_metadata.yaml deleted file mode 100644 index 289c42b3..00000000 --- a/tests/cassettes/test_beta_retrieve_carrier_metadata.yaml +++ /dev/null @@ -1,1797 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - authorization: - - - user-agent: - - - method: GET - uri: https://api.easypost.com/beta/metadata - response: - body: - string: '{"carriers": [{"human_readable": "Amazon MWS", "name": "amazonmws", - "predefined_packages": [], "service_levels": [{"carrier": "amazonmws", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "UPS Rates"}, {"carrier": "amazonmws", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USPS Rates"}, {"carrier": - "amazonmws", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "FedEx Rates"}, {"carrier": "amazonmws", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "UPS Labels"}, {"carrier": "amazonmws", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USPS Labels"}, {"carrier": - "amazonmws", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "FedEx Labels"}, {"carrier": "amazonmws", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "UPS Tracking"}, {"carrier": "amazonmws", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USPS Tracking"}, - {"carrier": "amazonmws", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FedEx Tracking"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "APC", "name": "apc", "predefined_packages": - [], "service_levels": [{"carrier": "apc", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "parcelConnectBookService"}, - {"carrier": "apc", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "parcelConnectExpeditedDDP"}, {"carrier": - "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "parcelConnectExpeditedDDU"}, {"carrier": "apc", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "parcelConnectPriorityDDP"}, {"carrier": "apc", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "parcelConnectPriorityDDPDelcon"}, - {"carrier": "apc", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "parcelConnectPriorityDDU"}, {"carrier": - "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "parcelConnectPriorityDDUDelcon"}, {"carrier": "apc", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "parcelConnectPriorityDDUPQW"}, {"carrier": "apc", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "parcelConnectStandardDDU"}, - {"carrier": "apc", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "parcelConnectStandardDDUPQW"}, {"carrier": - "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "parcelConnectPacketDDU"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Asendia USA", "name": "asendiausa", "predefined_packages": - [], "service_levels": [{"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "ADS", "max_weight": null, "name": "ADS"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Air - Freight Inbound", "max_weight": null, "name": "AirFreightInbound"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Air - Freight Outbound", "max_weight": null, "name": "AirFreightOutbound"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Asendia - Domestic Bound Printed Matter Expedited", "max_weight": null, "name": "AsendiaDomesticBoundPrinterMatterExpedited"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Bound Printed Matter Ground", "max_weight": null, "name": - "AsendiaDomesticBoundPrinterMatterGround"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Asendia Domestic Flats Expedited", - "max_weight": null, "name": "AsendiaDomesticFlatsExpedited"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Asendia - Domestic Flats Ground", "max_weight": null, "name": "AsendiaDomesticFlatsGround"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Parcel Ground Over 1 Lb", "max_weight": null, "name": "AsendiaDomesticParcelGroundOver1lb"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Parcel Ground Under 1 Lb", "max_weight": null, "name": "AsendiaDomesticParcelGroundUnder1lb"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Parcel MAX Over 1 Lb", "max_weight": null, "name": "AsendiaDomesticParcelMAXOver1lb"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Parcel MAX Under 1 Lb", "max_weight": null, "name": "AsendiaDomesticParcelMAXUnder1lb"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Parcel Over 1 Lb Expedited", "max_weight": null, "name": - "AsendiaDomesticParcelOver1lbExpedited"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Asendia Domestic Parcel Under 1 - Lb Expedited", "max_weight": null, "name": "AsendiaDomesticParcelUnder1lbExpedited"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Promo Parcel Expedited", "max_weight": null, "name": "AsendiaDomesticPromoParcelExpedited"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Asendia Domestic Promo Parcel Ground", "max_weight": null, "name": "AsendiaDomesticPromoParcelGround"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Bulk Freight", "max_weight": null, "name": "BulkFreight"}, {"carrier": "asendiausa", - "description": null, "dimensions": [], "human_readable": "Business Mail Canada - Lettermail", "max_weight": null, "name": "BusinessMailCanadaLettermail"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Business Mail Canada Lettermail Machineable", "max_weight": null, "name": - "BusinessMailCanadaLettermailMachineable"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Business Mail Economy", "max_weight": - null, "name": "BusinessMailEconomy"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Business Mail Economy LP Wholesale", - "max_weight": null, "name": "BusinessMailEconomyLPWholesale"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Business - Mail Economy SP Wholesale", "max_weight": null, "name": "BusinessMailEconomySPWholesale"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Business Mail International Priority Airmail", "max_weight": null, "name": - "BusinessMailIPA"}, {"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "Business Mail International Surface Air Lift", "max_weight": - null, "name": "BusinessMailISAL"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Business Mail Priority", "max_weight": - null, "name": "BusinessMailPriority"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Business Mail Priority LP Wholesale", - "max_weight": null, "name": "BusinessMailPriorityLPWholesale"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Business - Mail Priority SP Wholesale", "max_weight": null, "name": "BusinessMailPrioritySPWholesale"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Marketing Mail Canada Personalized Letter Carrier Presort", "max_weight": - null, "name": "MarketingMailCanadaPersonalizedLCP"}, {"carrier": "asendiausa", - "description": null, "dimensions": [], "human_readable": "Marketing Mail Canada - Personalized Machineable", "max_weight": null, "name": "MarketingMailCanadaPersonalizedMachineable"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Marketing Mail Canada Personalized Non-Dangerous Goods", "max_weight": null, - "name": "MarketingMailCanadaPersonalizedNDG"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Marketing Mail Economy", "max_weight": - null, "name": "MarketingMailEconomy"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Marketing Mail International Priority - Airmail", "max_weight": null, "name": "MarketingMailIPA"}, {"carrier": "asendiausa", - "description": null, "dimensions": [], "human_readable": "MarketingMail International - Surface Air Lift", "max_weight": null, "name": "MarketingMailISAL"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Marketing - Mail Priority", "max_weight": null, "name": "MarketingMailPriority"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Publications - Canada Letter Carrier Presort", "max_weight": null, "name": "PublicationsCanadaLCP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Publications Canada Non-Dangerous Goods", "max_weight": null, "name": "PublicationsCanadaNDG"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Publications Economy", "max_weight": null, "name": "PublicationsEconomy"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "Publications International Priority Airmail", "max_weight": null, "name": - "PublicationsIPA"}, {"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "Publications International Surface Air Lift", "max_weight": - null, "name": "PublicationsISAL"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "Publications Priority", "max_weight": - null, "name": "PublicationsPriority"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "ePAQ Elite", "max_weight": null, - "name": "ePAQElite"}, {"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "ePAQ Elite Custom", "max_weight": null, "name": "ePAQEliteCustom"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQElite Delivered At Place", "max_weight": null, "name": "ePAQEliteDAP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Elite Delivered Duty Paid", "max_weight": null, "name": "ePAQEliteDDP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Elite Delivered Duty Paid Oversized", "max_weight": null, "name": "ePAQEliteDDPOversized"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Elite DPD", "max_weight": null, "name": "ePAQEliteDPD"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Elite Direct Access Canada Delivered Duty Paid", "max_weight": null, "name": - "ePAQEliteDirectAccessCanadaDDP"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "ePAQ Elite Oversized", "max_weight": - null, "name": "ePAQEliteOversized"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "ePAQ Plus", "max_weight": null, - "name": "ePAQPlus"}, {"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "ePAQ Plus Custom", "max_weight": null, "name": "ePAQPlusCustom"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Plus Customs Pre-Paid", "max_weight": null, "name": "ePAQPlusCustomsPrepaid"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Plus Delivered At Place", "max_weight": null, "name": "ePAQPlusDAP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Plus Delivered Duty Paid", "max_weight": null, "name": "ePAQPlusDDP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Plus Economy", "max_weight": null, "name": "ePAQPlusEconomy"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Plus Wholesale", "max_weight": null, "name": "ePAQPlusWholesale"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Plus ePacket", "max_weight": null, "name": "ePAQPlusePacket"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Plus ePacket Canada Customs Pre-Paid", "max_weight": null, "name": "ePAQPlusePacketCanadaCustomsPrePaid"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Plus ePacket Canada Delivered Duty Paid", "max_weight": null, "name": - "ePAQPlusePacketCanadaDDP"}, {"carrier": "asendiausa", "description": null, - "dimensions": [], "human_readable": "ePAQ Returns Domestic", "max_weight": - null, "name": "ePAQReturnsDomestic"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "ePAQ Returns International", "max_weight": - null, "name": "ePAQReturnsInternational"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "ePAQ Select", "max_weight": null, - "name": "ePAQSelect"}, {"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "ePAQ Select Custom", "max_weight": null, "name": "ePAQSelectCustom"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select Customs Pre-Paid By Shopper", "max_weight": null, "name": "ePAQSelectCustomsPrepaidByShopper"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select Delivered At Place", "max_weight": null, "name": "ePAQSelectDAP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select Delivered Duty Paid", "max_weight": null, "name": "ePAQSelectDDP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select Delivered Duty Paid Direct Access", "max_weight": null, "name": - "ePAQSelectDDPDirectAccess"}, {"carrier": "asendiausa", "description": null, - "dimensions": [], "human_readable": "ePAQ Select Direct Access", "max_weight": - null, "name": "ePAQSelectDirectAccess"}, {"carrier": "asendiausa", "description": - null, "dimensions": [], "human_readable": "ePAQ Select Direct Access Canada - Delivered Duty Paid", "max_weight": null, "name": "ePAQSelectDirectAccessCanadaDDP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select Economy", "max_weight": null, "name": "ePAQSelectEconomy"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Select Oversized", "max_weight": null, "name": "ePAQSelectOversized"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Select Oversized Delivered Duty Paid", "max_weight": null, "name": "ePAQSelectOversizedDDP"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select PMEI", "max_weight": null, "name": "ePAQSelectPMEI"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Select PMEI Canada Customs Pre-Paid", "max_weight": null, "name": "ePAQSelectPMEICanadaCustomsPrePaid"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select PMEIPC Postage", "max_weight": null, "name": "ePAQSelectPMEIPCPostage"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select Priority Mail International", "max_weight": null, "name": "ePAQSelectPMI"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Select Priority Mail International Canada Customs Pre-Paid", "max_weight": - null, "name": "ePAQSelectPMICanadaCustomsPrepaid"}, {"carrier": "asendiausa", - "description": null, "dimensions": [], "human_readable": "ePAQ Select Priority - Mail International Canada Delivered Duty Paid", "max_weight": null, "name": - "ePAQSelectPMICanadaDDP"}, {"carrier": "asendiausa", "description": null, - "dimensions": [], "human_readable": "ePAQ Select Priority Mail International - Non-Presort", "max_weight": null, "name": "ePAQSelectPMINonPresort"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Select PMIPC Postage", "max_weight": null, "name": "ePAQSelectPMIPCPostage"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Standard", "max_weight": null, "name": "ePAQStandard"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Standard Custom", "max_weight": null, "name": "ePAQStandardCustom"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Standard Economy", "max_weight": null, "name": "ePAQStandardEconomy"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "ePAQ - Standard International Priority Airmail", "max_weight": null, "name": "ePAQStandardIPA"}, - {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": - "ePAQ Standard International Surface Air Lift", "max_weight": null, "name": - "ePAQStandardISAL"}, {"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "ePaq Select PMEI Non-Presort", "max_weight": null, - "name": "ePaqSelectPMEINonPresort"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Australia Post", "name": "australiapost", "predefined_packages": - [{"carrier": "australiapost", "description": null, "dimensions": [], "human_readable": - "Carton", "max_weight": null, "name": "CARTON"}, {"carrier": "australiapost", - "description": null, "dimensions": [], "human_readable": "Pallet", "max_weight": - null, "name": "PALLET"}, {"carrier": "australiapost", "description": null, - "dimensions": [], "human_readable": "Satchel", "max_weight": null, "name": - "SATCHEL"}, {"carrier": "australiapost", "description": null, "dimensions": - [], "human_readable": "Bag", "max_weight": null, "name": "BAG"}, {"carrier": - "australiapost", "description": null, "dimensions": [], "human_readable": - "Envelope", "max_weight": null, "name": "ENVELOPE"}, {"carrier": "australiapost", - "description": null, "dimensions": [], "human_readable": "Item", "max_weight": - null, "name": "ITEM"}, {"carrier": "australiapost", "description": null, "dimensions": - [], "human_readable": "Jiffy Bag", "max_weight": null, "name": "JIFFYBAG"}, - {"carrier": "australiapost", "description": "Up to 500kg", "dimensions": [], - "human_readable": "Skid", "max_weight": null, "name": "SKID"}], "service_levels": - [{"carrier": "australiapost", "description": "Specific service availability - is determined by your AustraliaPost account.", "dimensions": [], "human_readable": - "Parcel Post", "max_weight": null, "name": "ParcelPost"}, {"carrier": "australiapost", - "description": "Specific service availability is determined by your AustraliaPost - account.", "dimensions": [], "human_readable": "Express Post", "max_weight": - null, "name": "ExpressPost"}, {"carrier": "australiapost", "description": - "Specific service availability is determined by your AustraliaPost account.International - returns not supported.", "dimensions": [], "human_readable": "International", - "max_weight": null, "name": "International"}, {"carrier": "australiapost", - "description": "Specific service availability is determined by your AustraliaPost - account.", "dimensions": [], "human_readable": "Commercial", "max_weight": - null, "name": "Commercial"}], "shipment_options": [], "supported_features": - [{"carrier": "australiapost", "description": null, "name": "labels", "supported": - true}, {"carrier": "australiapost", "description": null, "name": "orders", - "supported": true}, {"carrier": "australiapost", "description": null, "name": - "pickups", "supported": false}, {"carrier": "australiapost", "description": - null, "name": "refunds", "supported": true}, {"carrier": "australiapost", - "description": "Domestic only.", "name": "returns", "supported": true}, {"carrier": - "australiapost", "description": null, "name": "scanforms", "supported": true}, - {"carrier": "australiapost", "description": null, "name": "rating", "supported": - true}, {"carrier": "australiapost", "description": null, "name": "tracking", - "supported": true}, {"carrier": "australiapost", "description": "Not available - with Print as You Go.", "name": "bill_on_label_purchase", "supported": true}, - {"carrier": "australiapost", "description": null, "name": "bill_on_delivery", - "supported": false}, {"carrier": "australiapost", "description": null, "name": - "bill_on_scan", "supported": false}, {"carrier": "australiapost", "description": - "Daily manifesting when using Print as You Go.", "name": "bill_on_manifest", - "supported": true}, {"carrier": "australiapost", "description": null, "name": - "commercial_invoices", "supported": null}, {"carrier": "australiapost", "description": - null, "name": "delivers_to_po_box", "supported": null}, {"carrier": "australiapost", - "description": null, "name": "sort_codes", "supported": false}, {"carrier": - "australiapost", "description": null, "name": "test_environment", "supported": - true}]}, {"human_readable": "AxlehireV3", "name": "axlehirev3", "predefined_packages": - [], "service_levels": [{"carrier": "axlehirev3", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "AxleHireDelivery"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "Better - Trucks", "name": "bettertrucks", "predefined_packages": [], "service_levels": - [{"carrier": "bettertrucks", "description": null, "dimensions": [], "human_readable": - "Next Day", "max_weight": null, "name": "NEXT_DAY"}, {"carrier": "bettertrucks", - "description": null, "dimensions": [], "human_readable": "Express", "max_weight": - null, "name": "EXPRESS"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "Canada Post", "name": "canadapost", "predefined_packages": - [], "service_levels": [{"carrier": "canadapost", "description": null, "dimensions": - [], "human_readable": "Delivered Tonight", "max_weight": null, "name": "DeliveredTonight"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Regular Parcel", "max_weight": null, "name": "RegularParcel"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Expedited - Parcel", "max_weight": null, "name": "ExpeditedParcel"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "Xpresspost", "max_weight": - null, "name": "Xpresspost"}, {"carrier": "canadapost", "description": null, - "dimensions": [], "human_readable": "Xpresspost Certified", "max_weight": - null, "name": "XpresspostCertified"}, {"carrier": "canadapost", "description": - null, "dimensions": [], "human_readable": "Priority", "max_weight": null, - "name": "Priority"}, {"carrier": "canadapost", "description": null, "dimensions": - [], "human_readable": "Library Books", "max_weight": null, "name": "LibraryBooks"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Expedited Parcel USA", "max_weight": null, "name": "ExpeditedParcelUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Envelope USA", "max_weight": null, "name": "PriorityWorldwideEnvelopeUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Pak USA", "max_weight": null, "name": "PriorityWorldwidePakUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Parcel USA", "max_weight": null, "name": "PriorityWorldwideParcelUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Small Packet USA Air", "max_weight": null, "name": "SmallPacketUSAAir"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Tracked Packet USA", "max_weight": null, "name": "TrackedPacketUSA"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Tracked - Packet USA LVM", "max_weight": null, "name": "TrackedPacketUSALVM"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Xpresspost - USA", "max_weight": null, "name": "XpresspostUSA"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "Xpresspost International", - "max_weight": null, "name": "XpresspostInternational"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "International Parcel - Air", "max_weight": null, "name": "InternationalParcelAir"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "International Parcel - Surface", "max_weight": null, "name": "InternationalParcelSurface"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Priority - Worldwide Envelope Intl", "max_weight": null, "name": "PriorityWorldwideEnvelopeIntl"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Pak Intl", "max_weight": null, "name": "PriorityWorldwidePakIntl"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Parcel Intl", "max_weight": null, "name": "PriorityWorldwideParcelIntl"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Small Packet International Air", "max_weight": null, "name": "SmallPacketInternationalAir"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Small Packet International Surface", "max_weight": null, "name": "SmallPacketInternationalSurface"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Tracked Packet International", "max_weight": null, "name": "TrackedPacketInternational"}], - "shipment_options": [], "supported_features": [{"carrier": "canadapost", "description": - null, "name": "labels", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "orders", "supported": false}, {"carrier": "canadapost", "description": - null, "name": "pickups", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "refunds", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "returns", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "scanforms", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "rating", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "tracking", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "bill_on_label_purchase", "supported": false}, {"carrier": "canadapost", - "description": null, "name": "bill_on_delivery", "supported": true}, {"carrier": - "canadapost", "description": null, "name": "bill_on_scan", "supported": false}, - {"carrier": "canadapost", "description": null, "name": "bill_on_manifest", - "supported": true}, {"carrier": "canadapost", "description": null, "name": - "commercial_invoices", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "delivers_to_po_box", "supported": null}, {"carrier": "canadapost", - "description": null, "name": "sort_codes", "supported": false}, {"carrier": - "canadapost", "description": null, "name": "test_environment", "supported": - true}]}, {"human_readable": "Canpar", "name": "canpar", "predefined_packages": - [], "service_levels": [{"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Ground"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "SelectLetter"}, {"carrier": "canpar", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "SelectPak"}, - {"carrier": "canpar", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Select"}, {"carrier": "canpar", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "OvernightLetter"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "OvernightPak"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Overnight"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SelectUSA"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "USAPak"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USALetter"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "USA"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "International"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "CDL - Last Mile Solutions", "name": "cdllastmilesolutions", "predefined_packages": - [], "service_levels": [{"carrier": "cdllastmilesolutions", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DISTRIBUTION"}, {"carrier": "cdllastmilesolutions", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Same - Day"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "Chronopost", "name": "chronopost", "predefined_packages": [], "service_levels": - [], "shipment_options": [], "supported_features": []}, {"human_readable": - "CloudSort", "name": "cloudsort", "predefined_packages": [], "service_levels": - [], "shipment_options": [], "supported_features": []}, {"human_readable": - "Courier Express", "name": "courierexpress", "predefined_packages": [], "service_levels": - [{"carrier": "courierexpress", "description": null, "dimensions": [], "human_readable": - "Basic Parcel", "max_weight": null, "name": "BASIC_PARCEL"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Couriers Please", "name": - "couriersplease", "predefined_packages": [], "service_levels": [{"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Road Express", "max_weight": null, "name": "RoadExpress"}, {"carrier": "couriersplease", - "description": null, "dimensions": [], "human_readable": "Agg Exp Authority - To Leave P10", "max_weight": null, "name": "AggExpAtlP10"}, {"carrier": "couriersplease", - "description": null, "dimensions": [], "human_readable": "Agg Exp Authority - To Leave P25", "max_weight": null, "name": "AggExpAtlP25"}, {"carrier": "couriersplease", - "description": null, "dimensions": [], "human_readable": "Agg Exp Authority - To Leave Base & Kilo", "max_weight": null, "name": "AggExpAtlBaseandKilo"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Exp Authority To Leave 09", "max_weight": null, "name": "AggExpAtlP0"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Exp Authority To Leave P1", "max_weight": null, "name": "AggExpAtlP1"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Exp Authority To Leave P3", "max_weight": null, "name": "AggExpAtlP3"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Exp Authority To Leave P5", "max_weight": null, "name": "AggExpAtlP5"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Drop Off Hubbed Based & Kilo", "max_weight": null, "name": "AggDropOffHubbedBaseandKilo"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Drop Off Hubbed P0", "max_weight": null, "name": "AggDropOffHubbedP0"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Drop Off Hubbed P1", "max_weight": null, "name": "AggDropOffHubbedP1"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Drop Off Hubbed P3", "max_weight": null, "name": "AggDropOffHubbedP3"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Drop Off Hubbed P5", "max_weight": null, "name": "AggDropOffHubbedP5"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg STD Authority To Leave P10", "max_weight": null, "name": "AggStdAtlP10"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg STD Authority To Leave Base & Kilo", "max_weight": null, "name": "AggStdAtlBaseandKilo"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg STD Authority To Leave P0", "max_weight": null, "name": "AggStdAtlP0"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg STD Authority To Leave P1", "max_weight": null, "name": "AggStdAtlP1"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg STD Authority To Leave P3", "max_weight": null, "name": "AggStdAtlP3"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg STD Authority To Leave P5", "max_weight": null, "name": "AggStdAtlP5"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Ecommerce Base & Kilo", "max_weight": null, "name": "AggEcomBaseandKilo"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Ecommerce Base & Kilo", "max_weight": null, "name": "AggEcomP0"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Ecommerce P1", "max_weight": null, "name": "AggEcomP1"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Ecommerce P3", "max_weight": null, "name": "AggEcomP3"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Ecommerce P5", "max_weight": null, "name": "AggEcomP5"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Drop Off Hubbed P10", "max_weight": null, "name": "AggDropOffHubbedP10"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Drop Off Hubbed P25", "max_weight": null, "name": "AggDropOffHubbedP25"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg STD Authority To Leave P25", "max_weight": null, "name": "AggStdAtlP25"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Ecommerce P10", "max_weight": null, "name": "AggEcomP10"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Agg Ecommerce P25", "max_weight": null, "name": "AggEcomP25"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Australian City Express", "max_weight": null, "name": "AustralianCityExpress"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Drop Ship 500 Gram Parcel", "max_weight": null, "name": "DropShip500GramParcel"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Drop Ship 1 Kilogram Parcel", "max_weight": null, "name": "DropShip1KgParcel"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Drop Ship 3Kilogram Parcel", "max_weight": null, "name": "DropShip3KgParcel"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Drop Ship 5 Kilogram Parcel", "max_weight": null, "name": "DropShip5KgParcel"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Domestic Priority", "max_weight": null, "name": "DomesticPriority"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Drop Ship 10 Kilogram Parcel", "max_weight": null, "name": "DropShip10KgParcel"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Drop Ship 20 Kilogram Parcel", "max_weight": null, "name": "DropShip20KgParcel"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Domestic Priority Signature", "max_weight": null, "name": "DomesticPrioritySignature"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Gold Domestic", "max_weight": null, "name": "GoldDomestic"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Road Express No Delivery", "max_weight": null, "name": "RoadExpressNoDelivery"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "Road Express No Pick Up", "max_weight": null, "name": "RoadExpressNoPickUp"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "500 Gram Parcel", "max_weight": null, "name": "500GramParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "500 Gram Parcel Authority To Leave", "max_weight": null, "name": "500GramParcelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "1 Kilogram Parcel", "max_weight": null, "name": "1KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "10 Kilogram Parcel", "max_weight": null, "name": "10KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "10 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "10KgParcelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "15 Kilogram Parcel", "max_weight": null, "name": "15KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "15 Kilogram Authority To Leave", "max_weight": null, "name": "15KgParcelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "1 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "1KgParcelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "2 Kilogram Parcel", "max_weight": null, "name": "2KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "25 Kilogram Parcel", "max_weight": null, "name": "25KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "25 Kilogram Parcel Authority To Leaave", "max_weight": null, "name": "25KgParcelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "2 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "2KgParcelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "3 Kilogram Parcel", "max_weight": null, "name": "3KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "3 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "3KgParcelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "5 Kilogram Parcel", "max_weight": null, "name": "5KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "5 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "5Kg Parcel - ATL"}, {"carrier": "couriersplease", "description": null, "dimensions": [], - "human_readable": "Australian City Express Signature", "max_weight": null, - "name": "AustralianCityExpressSignature"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "Domestic Saver Signature", "max_weight": - null, "name": "DomesticSaverSignature"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "Domestic Off Peak", "max_weight": - null, "name": "DomesticOffPeak"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "Domestic Saver", "max_weight": - null, "name": "DomesticSaver"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "Dometic Off Peak Signature", "max_weight": - null, "name": "DomesticOffPeakSignature"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "Gold Domestic Signature", "max_weight": - null, "name": "GoldDomesticSignature"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "1 Kilogram Satchel Authority To - Leave", "max_weight": null, "name": "1KgSatchelATL"}, {"carrier": "couriersplease", - "description": null, "dimensions": [], "human_readable": "1 Kilogram Satchel", - "max_weight": null, "name": "1KgSatchel"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "3 Kilogram Satchel", "max_weight": - null, "name": "3KgSatchel"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "5 Kilogram Satchel", "max_weight": - null, "name": "5KgSatchel"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "3 Kilogram Satchel Authority To - Leave", "max_weight": null, "name": "3KgSatchelATL"}, {"carrier": "couriersplease", - "description": null, "dimensions": [], "human_readable": "5 Kilogram Satchel - Authority To Leave", "max_weight": null, "name": "5KgSatchelATL"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "500 Gram Satchel Authority To Leave", "max_weight": null, "name": "500GramSatchelATL"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "500 Gram Satchel", "max_weight": null, "name": "500GramSatchel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "5 Kilogram Satchel", "max_weight": null, "name": "5KSatchel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": - "Express International Priority", "max_weight": null, "name": "ExpressInternationalPriority"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "International Saver", "max_weight": null, "name": "InternationalSaver"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "International Express Import", "max_weight": null, "name": "InternationalExpressImport"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "International Express", "max_weight": null, "name": "InternationalExpress"}, - {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "500gm Parcel", "max_weight": null, "name": "500gmParcel"}, {"carrier": "couriersplease", - "description": null, "dimensions": [], "human_readable": "1 Kilogram Parcel", - "max_weight": null, "name": "1kgParcel"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "3 Kilogram Parcel", "max_weight": - null, "name": "3kgParcel"}, {"carrier": "couriersplease", "description": null, - "dimensions": [], "human_readable": "5 Kilogram Parcel", "max_weight": null, - "name": "5kgParcel"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "DAI Post", "name": "daipost", "predefined_packages": [], - "service_levels": [{"carrier": "daipost", "description": null, "dimensions": - [], "human_readable": "Parcel Epacket", "max_weight": null, "name": "ParcelMax"}, - {"carrier": "daipost", "description": null, "dimensions": [], "human_readable": - "International Economy", "max_weight": null, "name": "InternationalEconomy"}, - {"carrier": "daipost", "description": null, "dimensions": [], "human_readable": - "International Standard", "max_weight": null, "name": "InternationalStandard"}, - {"carrier": "daipost", "description": null, "dimensions": [], "human_readable": - "International Express", "max_weight": null, "name": "InternationalExpress"}, - {"carrier": "daipost", "description": null, "dimensions": [], "human_readable": - "Domestic Tracked", "max_weight": null, "name": "DomesticTracked"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DeliverIt", "name": "deliverit", - "predefined_packages": [], "service_levels": [{"carrier": "deliverit", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Afternoon"}, {"carrier": "deliverit", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Early-It"}, {"carrier": - "deliverit", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Economy"}, {"carrier": "deliverit", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Noon-It"}, {"carrier": "deliverit", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Saturday"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Deutsche Post", "name": - "deutschepost", "predefined_packages": [], "service_levels": [{"carrier": - "deutschepost", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "PacketPlus"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Deutsche Post UK", "name": "deutschepostuk", "predefined_packages": - [], "service_levels": [{"carrier": "deutschepostuk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "PriorityPacketPlus"}, - {"carrier": "deutschepostuk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PriorityPacket"}, {"carrier": "deutschepostuk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PriorityPacketTracked"}, {"carrier": "deutschepostuk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "BusinessMailRegistered"}, {"carrier": "deutschepostuk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "StandardPacket"}, - {"carrier": "deutschepostuk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "BusinessMailStandard"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DHL eCommerce Asia", "name": - "dhlecommerceasia", "predefined_packages": [], "service_levels": [{"carrier": - "dhlecommerceasia", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Packet"}, {"carrier": "dhlecommerceasia", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PacketPlus"}, {"carrier": "dhlecommerceasia", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ParcelDirect"}, {"carrier": "dhlecommerceasia", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelDirectExpedited"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "DHL - eCommerce Solutions", "name": "dhlecommercesolutions", "predefined_packages": - [], "service_levels": [{"carrier": "dhlecommercesolutions", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DHLParcelExpedited"}, {"carrier": "dhlecommercesolutions", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DHLParcelExpeditedMax"}, {"carrier": "dhlecommercesolutions", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DHLParcelGround"}, {"carrier": "dhlecommercesolutions", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "DHLBPMExpedited"}, - {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "DHLBPMGround"}, {"carrier": - "dhlecommercesolutions", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DHLParcelInternationalDirect"}, {"carrier": - "dhlecommercesolutions", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DHLParcelInternationalStandard"}, {"carrier": - "dhlecommercesolutions", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DHLPacketInternational"}, {"carrier": "dhlecommercesolutions", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DHLParcelInternationalDirectPriority"}, {"carrier": "dhlecommercesolutions", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DHLParcelInternationalDirectStandard"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DHL Express", "name": "dhlexpress", - "predefined_packages": [{"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "JumboDocument"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "JumboParcel"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Document"}, {"carrier": "dhlexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "DHLFlyer"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Domestic"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpressDocument"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DHLExpressEnvelope"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "JumboBox"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "JumboJuniorDocument"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "JuniorJumboBox"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "JumboJuniorParcel"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "OtherDHLPackaging"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Parcel"}, {"carrier": "dhlexpress", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "YourPackaging"}], "service_levels": - [{"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "BreakBulkEconomy"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "BreakBulkExpress"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DomesticEconomySelect"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DomesticExpress"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DomesticExpress1030"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DomesticExpress1200"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EconomySelect"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "EconomySelectNonDoc"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "EuroPack"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EuropackNonDoc"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Express1030"}, {"carrier": - "dhlexpress", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Express1030NonDoc"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express1200NonDoc"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express1200"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Express900"}, {"carrier": - "dhlexpress", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Express900NonDoc"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressEasy"}, {"carrier": "dhlexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ExpressEasyNonDoc"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpressEnvelope"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressWorldwide"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpressWorldwideB2C"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ExpressWorldwideB2CNonDoc"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpressWorldwideECX"}, {"carrier": "dhlexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressWorldwideNonDoc"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FreightWorldwide"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "GlobalmailBusiness"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "JetLine"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "JumboBox"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "LogisticsServices"}, - {"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "SameDay"}, {"carrier": "dhlexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "SecureLine"}, {"carrier": "dhlexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SprintLine"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DHL Paket", "name": "dhlpaket", - "predefined_packages": [], "service_levels": [{"carrier": "dhlpaket", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EuroPaket"}, {"carrier": "dhlpaket", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Paket"}, {"carrier": - "dhlpaket", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "PaketConnect"}, {"carrier": "dhlpaket", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PaketInternational"}, {"carrier": "dhlpaket", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Retoure"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DHL SmartMail", "name": - "dhlsmartmail", "predefined_packages": [], "service_levels": [], "shipment_options": - [], "supported_features": []}, {"human_readable": "DPD", "name": "dpd", "predefined_packages": - [], "service_levels": [{"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPDCLASSIC"}, {"carrier": - "dpd", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPD8:30"}, {"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPD10:00"}, {"carrier": - "dpd", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPD12:00"}, {"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPD18:00"}, {"carrier": - "dpd", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPDEXPRESS"}, {"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPDPARCELLETTER"}, - {"carrier": "dpd", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DPDPARCELLETTERPLUS"}, {"carrier": "dpd", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPDINTERNATIONALMAIL"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "DPDUK", "name": "dpduk", "predefined_packages": [{"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Parcel"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Pallet"}, {"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressPak"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FreightParcel"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Freight"}], "service_levels": [{"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "AirExpressInternationalAir"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "AirClassicInternationalAir"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelSunday"}, {"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelSunday"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PalletSunday"}, {"carrier": "dpduk", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "PalletDpdClassic"}, {"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpresspakDpdClassic"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpresspakSunday"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelDpdClassic"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelDpdTwoDay"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ParcelDpdNextDay"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ParcelDpd12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelDpd10"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ParcelReturnToShop"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelSaturday"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelSaturday12"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ParcelSaturday10"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ParcelSunday12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FreightParcelDpdClassic"}, {"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelSunday12"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpresspakDpdNextDay"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ExpresspakDpd12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpresspakDpd10"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpresspakSaturday"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ExpresspakSaturday12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpresspakSaturday10"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpresspakSunday12"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "PalletSunday12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PalletDpdTwoDay"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PalletDpdNextDay"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "PalletDpd12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PalletDpd10"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PalletSaturday"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "PalletSaturday12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PalletSaturday10"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelDpdTwoDay"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FreightParcelDpdNextDay"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FreightParcelDpd12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FreightParcelDpd10"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelSaturday"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FreightParcelSaturday12"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FreightParcelSaturday10"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "ePostGlobal", - "name": "epostglobal", "predefined_packages": [], "service_levels": [{"carrier": - "epostglobal", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "CourierServiceDDP"}, {"carrier": "epostglobal", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "CourierServiceDDU"}, {"carrier": "epostglobal", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DomesticEconomyParcel"}, {"carrier": "epostglobal", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "DomesticParcelBPM"}, - {"carrier": "epostglobal", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DomesticPriorityParcel"}, {"carrier": "epostglobal", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DomesticPriorityParcelBPM"}, {"carrier": "epostglobal", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EMIService"}, {"carrier": "epostglobal", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "EconomyParcelService"}, - {"carrier": "epostglobal", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "IPAService"}, {"carrier": "epostglobal", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ISALService"}, {"carrier": "epostglobal", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "PMIService"}, - {"carrier": "epostglobal", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PriorityParcelDDP"}, {"carrier": "epostglobal", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PriorityParcelDDU"}, {"carrier": "epostglobal", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PriorityParcelDeliveryConfirmationDDP"}, {"carrier": "epostglobal", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PriorityParcelDeliveryConfirmationDDU"}, {"carrier": "epostglobal", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ePacketService"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "Estafeta", "name": "estafeta", "predefined_packages": [{"carrier": "estafeta", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ENVELOPE"}, {"carrier": "estafeta", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "PARCEL"}], "service_levels": - [{"carrier": "estafeta", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "NextDayBy930"}, {"carrier": "estafeta", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "NextDayBy1130"}, {"carrier": "estafeta", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "NextDay"}, - {"carrier": "estafeta", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Ground"}, {"carrier": "estafeta", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "TwoDay"}, {"carrier": "estafeta", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "LTL"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Evri", "name": "evri", - "predefined_packages": [], "service_levels": [{"carrier": "evri", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Courier2Home"}, {"carrier": "evri", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Courier2HomeNextDay"}, - {"carrier": "evri", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Shop2Home"}, {"carrier": "evri", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Shop2HomeNextDay"}, {"carrier": "evri", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Shop2Shop"}, {"carrier": - "evri", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Shop2ShopNextDay"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Fastway", "name": "fastway", "predefined_packages": - [{"carrier": "fastway", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Parcel"}, {"carrier": "fastway", "description": - "(Satchel)", "dimensions": [], "human_readable": null, "max_weight": null, - "name": "A2"}, {"carrier": "fastway", "description": "(Satchel)", "dimensions": - [], "human_readable": null, "max_weight": null, "name": "A3"}, {"carrier": - "fastway", "description": "(Satchel, not available in Australia)", "dimensions": - [], "human_readable": null, "max_weight": null, "name": "A4"}, {"carrier": - "fastway", "description": "(Satchel, not available in South Africa)", "dimensions": - [], "human_readable": null, "max_weight": null, "name": "A5"}, {"carrier": - "fastway", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "BOXSML"}, {"carrier": "fastway", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "BOXMED"}, {"carrier": "fastway", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "BOXLRG"}], "service_levels": [{"carrier": - "fastway", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Parcel"}, {"carrier": "fastway", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Satchel"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "FedEx", "name": "fedex", "predefined_packages": [{"carrier": "fedex", "description": - "Up to approximately 60 pages", "dimensions": ["9.5in x 12.5in"], "human_readable": - null, "max_weight": 8.0, "name": "FedExEnvelope"}, {"carrier": "fedex", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FedExBox"}, {"carrier": "fedex", "description": null, "dimensions": ["12in - x 15.5in"], "human_readable": null, "max_weight": 88.0, "name": "FedExPak"}, - {"carrier": "fedex", "description": "Triangular box for plans, posters, fabric - rolls, charts and blueprints", "dimensions": ["38in x 6in x 6in x 6in"], "human_readable": - null, "max_weight": 320.0, "name": "FedExTube"}, {"carrier": "fedex", "description": - "To qualify for the flat rate, weight cannot exceed 10 kg", "dimensions": - ["15.81in x 12.94in x 10.19in"], "human_readable": null, "max_weight": 352.0, - "name": "FedEx10kgBox"}, {"carrier": "fedex", "description": "To qualify for - the flat rate, weight cannot exceed 25 kg.", "dimensions": ["21.56in x 16.56in - x 13.19in"], "human_readable": null, "max_weight": 880.0, "name": "FedEx25kgBox"}, - {"carrier": "fedex", "description": null, "dimensions": ["12.25in x 10.9in - x 1.5in", "8.75in x 2.63in x 11.25in"], "human_readable": null, "max_weight": - 320.0, "name": "FedExSmallBox"}, {"carrier": "fedex", "description": null, - "dimensions": ["13.25in x 11.5in x 2.38in", "8.75in x 4.38in x 11.25in"], - "human_readable": null, "max_weight": 320.0, "name": "FedExMediumBox"}, {"carrier": - "fedex", "description": null, "dimensions": ["17.88in x 12.38in x 3in", "8.75in - x 7.75in x 11.25in"], "human_readable": null, "max_weight": 320.0, "name": - "FedExLargeBox"}, {"carrier": "fedex", "description": null, "dimensions": - ["11.88in x 10.75in x 11in", "15.25in x 14.13in x 6in"], "human_readable": - null, "max_weight": 320.0, "name": "FedExExtraLargeBox"}], "service_levels": - [{"carrier": "fedex", "description": "2 business days by 4:30pm, Saturday - delivery", "dimensions": null, "human_readable": "FedEx 2 Day", "max_weight": - null, "name": "FEDEX_2_DAY"}, {"carrier": "fedex", "description": "2 business - days by 10:30am", "dimensions": null, "human_readable": "FedEx 2 Day (AM)", - "max_weight": null, "name": "FEDEX_2_DAY_AM"}, {"carrier": "fedex", "description": - "3 business days by 4:30pm", "dimensions": null, "human_readable": "FedEx - Express Saver", "max_weight": null, "name": "FEDEX_EXPRESS_SAVER"}, {"carrier": - "fedex", "description": "1-6 days", "dimensions": null, "human_readable": - "FedEx Ground", "max_weight": null, "name": "FEDEX_GROUND"}, {"carrier": "fedex", - "description": "2-5 business days", "dimensions": null, "human_readable": - "FedEx International (Connect Plus)", "max_weight": null, "name": "FEDEX_INTERNATIONAL_CONNECT_PLUS"}, - {"carrier": "fedex", "description": "By 8am the next business day, Saturday - delivery", "dimensions": null, "human_readable": "FedEx First (Overnight)", - "max_weight": null, "name": "FIRST_OVERNIGHT"}, {"carrier": "fedex", "description": - "1-5 days", "dimensions": null, "human_readable": "FedEx Ground (Home Delivery)", - "max_weight": null, "name": "GROUND_HOME_DELIVERY"}, {"carrier": "fedex", - "description": "4-5 business days", "dimensions": null, "human_readable": - "FedEx International (Economy)", "max_weight": null, "name": "INTERNATIONAL_ECONOMY"}, - {"carrier": "fedex", "description": "1-3 business days, time definite to select - markets", "dimensions": null, "human_readable": "FedEx International First", - "max_weight": null, "name": "INTERNATIONAL_FIRST"}, {"carrier": "fedex", "description": - "1-3 business days, time definite to select markets", "dimensions": null, - "human_readable": "FedEx International (First)", "max_weight": null, "name": - "INTERNATIONAL_PRIORITY"}, {"carrier": "fedex", "description": "By 10:30am - the next business day, Saturday delivery", "dimensions": null, "human_readable": - "FedEx Priority Overnight", "max_weight": null, "name": "PRIORITY_OVERNIGHT"}, - {"carrier": "fedex", "description": "2-7 business days; Sunday Delivery to - select markets", "dimensions": null, "human_readable": "FedEx Smart Post", - "max_weight": null, "name": "SMART_POST"}, {"carrier": "fedex", "description": - "By 4:30pm the next business day", "dimensions": null, "human_readable": "FedEx - Standard Overnight", "max_weight": null, "name": "STANDARD_OVERNIGHT"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "FedEx Cross Border", "name": - "fedexcrossborder", "predefined_packages": [], "service_levels": [{"carrier": - "fedexcrossborder", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "CBEC"}, {"carrier": "fedexcrossborder", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "CBECL"}, {"carrier": "fedexcrossborder", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "CBECP"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "FedEx - Mailview", "name": "fedexmailview", "predefined_packages": [], "service_levels": - [], "shipment_options": [], "supported_features": []}, {"human_readable": - "FedEx SmartPost", "name": "fedexsmartpost", "predefined_packages": [], "service_levels": - [{"carrier": "fedexsmartpost", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "SMART_POST"}], "shipment_options": [], - "supported_features": []}, {"human_readable": "FirstMile", "name": "firstmile", - "predefined_packages": [], "service_levels": [{"carrier": "firstmile", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "XParcelGround"}, {"carrier": "firstmile", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "XParcelExpedited"}, - {"carrier": "firstmile", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "XParcelExpeditedPlus"}, {"carrier": "firstmile", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "XParcelPriority"}, {"carrier": "firstmile", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "XParcelReturns"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "GSO", "name": "gso", "predefined_packages": [], "service_levels": [{"carrier": - "gso", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "EarlyPriorityOvernight"}, {"carrier": "gso", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PriorityOvernight"}, {"carrier": "gso", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "CaliforniaParcelService"}, - {"carrier": "gso", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "SaturdayDeliveryService"}, {"carrier": - "gso", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "EarlySaturdayService"}, {"carrier": "gso", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Ground"}, - {"carrier": "gso", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Overnight"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Hailify", "name": "hailify", "predefined_packages": - [], "service_levels": [{"carrier": "hailify", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Xpress"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Interlink Express", "name": - "interlinkexpress", "predefined_packages": [{"carrier": "interlinkexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Parcel"}, {"carrier": "interlinkexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Pallet"}, - {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpressPak"}, {"carrier": "interlinkexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcel"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Freight"}], "service_levels": [{"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkAirClassicInternationalAir"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkAirExpressInternationalAir"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1By10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1By12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1NextDay"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1Saturday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1SaturdayBy10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1SaturdayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1Sunday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1SundayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5By10"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5By10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5By12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5NextDay"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5Saturday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SaturdayBy10"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SaturdayBy10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SaturdayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5Sunday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SundayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkFreightBy10"}, {"carrier": "interlinkexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkFreightBy12"}, - {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkFreightNextDay"}, {"carrier": - "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkFreightSaturday"}, {"carrier": - "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkFreightSaturdayBy10"}, {"carrier": - "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkFreightSaturdayBy12"}, {"carrier": - "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkFreightSunday"}, {"carrier": "interlinkexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InterlinkFreightSundayBy12"}, {"carrier": "interlinkexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InterlinkParcelBy10"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelBy10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelBy12"}, {"carrier": "interlinkexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkParcelDpdEuropeByRoad"}, - {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkParcelNextDay"}, {"carrier": "interlinkexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InterlinkParcelReturn"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelReturnToShop"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelSaturday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelSaturdayBy10"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelSaturdayBy10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelSaturdayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelShipToShop"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkParcelSunday"}, {"carrier": "interlinkexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkParcelSundayBy12"}, - {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkParcelTwoDay"}, {"carrier": "interlinkexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InterlinkPickupParcelDpdEuropeByRoad"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "JP Post", "name": "jppost", - "predefined_packages": [], "service_levels": [], "shipment_options": [], "supported_features": - []}, {"human_readable": "Kuroneko Yamato", "name": "kuronekoyamato", "predefined_packages": - [], "service_levels": [], "shipment_options": [], "supported_features": []}, - {"human_readable": "La Poste", "name": "laposte", "predefined_packages": [], - "service_levels": [], "shipment_options": [], "supported_features": []}, {"human_readable": - "LaserShip", "name": "lasershipv2", "predefined_packages": [{"carrier": "lasershipv2", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Envelope"}, {"carrier": "lasershipv2", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Custom"}], - "service_levels": [{"carrier": "lasershipv2", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SameDay"}, {"carrier": - "lasershipv2", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "NextDay"}, {"carrier": "lasershipv2", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Weekend"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "Loomis Express", "name": "loomisexpress", "predefined_packages": [], "service_levels": - [{"carrier": "loomisexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "LoomisGround"}, {"carrier": "loomisexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "LoomisExpress1800"}, {"carrier": "loomisexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "LoomisExpress1200"}, {"carrier": "loomisexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "LoomisExpress900"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "LSO", - "name": "lso", "predefined_packages": [], "service_levels": [{"carrier": "lso", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "GroundEarly"}, {"carrier": "lso", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "GroundBasic"}, {"carrier": - "lso", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PriorityBasic"}, {"carrier": "lso", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "PriorityEarly"}, - {"carrier": "lso", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PrioritySaturday"}, {"carrier": "lso", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Priority2ndDay"}, {"carrier": "lso", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SameDay"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Maergo", "name": "maergo", - "predefined_packages": [], "service_levels": [{"carrier": "maergo", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Standard"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "Newgistics", "name": "newgistics", "predefined_packages": [], "service_levels": - [{"carrier": "newgistics", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelSelect"}, {"carrier": "newgistics", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ParcelSelectLightweight"}, {"carrier": "newgistics", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Ground"}, {"carrier": "newgistics", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Express"}, {"carrier": - "newgistics", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "FirstClassMail"}, {"carrier": "newgistics", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PriorityMail"}, {"carrier": "newgistics", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "BoundPrintedMatter"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "Ontrac", - "name": "ontrac", "predefined_packages": [{"carrier": "ontrac", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Letter"}], "service_levels": [{"carrier": "ontrac", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Sunrise"}, - {"carrier": "ontrac", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Gold"}, {"carrier": "ontrac", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "OnTracGround"}, {"carrier": "ontrac", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SameDay"}, {"carrier": - "ontrac", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PalletizedFreight"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Optima", "name": "optima", "predefined_packages": - [], "service_levels": [{"carrier": "optima", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "NxtDay"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "OSM Worldwide", "name": - "osmworldwide", "predefined_packages": [{"carrier": "osmworldwide", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "parcel"}, {"carrier": "osmworldwide", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "irregularparcel"}, - {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "softpack"}], "service_levels": [{"carrier": - "osmworldwide", "description": null, "dimensions": [], "human_readable": "First", - "max_weight": null, "name": "First"}, {"carrier": "osmworldwide", "description": - null, "dimensions": [], "human_readable": "Parcel Select Lightweight", "max_weight": - null, "name": "ParcelSelectLightweight"}, {"carrier": "osmworldwide", "description": - null, "dimensions": [], "human_readable": "Priority", "max_weight": null, - "name": "Priority"}, {"carrier": "osmworldwide", "description": null, "dimensions": - [], "human_readable": "BPM", "max_weight": null, "name": "BPM"}, {"carrier": - "osmworldwide", "description": null, "dimensions": [], "human_readable": "Parcel - Select", "max_weight": null, "name": "ParcelSelect"}, {"carrier": "osmworldwide", - "description": null, "dimensions": [], "human_readable": "Media Mail", "max_weight": - null, "name": "MediaMail"}, {"carrier": "osmworldwide", "description": null, - "dimensions": [], "human_readable": "Marketing Parcel", "max_weight": null, - "name": "MarketingParcel"}, {"carrier": "osmworldwide", "description": null, - "dimensions": [], "human_readable": "Marketing Parcel Tracked", "max_weight": - null, "name": "MarketingParcelTracked"}], "shipment_options": [], "supported_features": - [{"carrier": "osmworldwide", "description": null, "name": "labels", "supported": - true}, {"carrier": "osmworldwide", "description": null, "name": "orders", - "supported": false}, {"carrier": "osmworldwide", "description": null, "name": - "pickups", "supported": false}, {"carrier": "osmworldwide", "description": - null, "name": "refunds", "supported": false}, {"carrier": "osmworldwide", - "description": null, "name": "returns", "supported": false}, {"carrier": "osmworldwide", - "description": "Manifesting", "name": "scanforms", "supported": true}, {"carrier": - "osmworldwide", "description": null, "name": "rating", "supported": true}, - {"carrier": "osmworldwide", "description": null, "name": "tracking", "supported": - true}, {"carrier": "osmworldwide", "description": null, "name": "sort_codes", - "supported": true}]}, {"human_readable": "Parcelforce", "name": "parcelforce", - "predefined_packages": [], "service_levels": [{"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express9"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Express9Secure"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express9CourierPack"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express10"}, {"carrier": "parcelforce", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Express10Secure"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express10Exchange"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express10SecureExchange"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express10CourierPack"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ExpressAM"}, {"carrier": - "parcelforce", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "ExpressAMSecure"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressAMExchange"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpressAMSecureExchange"}, {"carrier": "parcelforce", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ExpressAMCourierPack"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpressPM"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressPMSecure"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express24"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Express24Large"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express24Secure"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express24Exchange"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express24SecureExchange"}, {"carrier": "parcelforce", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Express24CourierPack"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express48"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express48Large"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ParcelRiderPlus"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "GlobalBulkDirect"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "GlobalExpress"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "GlobalExpressEnvelopeDelivery"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "GlobalExpressPackDelivery"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "GlobalValue"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "GlobalPriority"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "GlobalPriorityReturns"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "EuroPriorityHome"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EuroPriorityBusiness"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "IrelandExpress"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "PARCLL", - "name": "parcll", "predefined_packages": [], "service_levels": [{"carrier": - "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ECOWE (Economy West)"}, {"carrier": "parcll", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ECOCE (Economy Central)"}, {"carrier": "parcll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ECONE (Economy Northeast)"}, - {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ECOEA (Economy East)"}, {"carrier": "parcll", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ECOSO (Economy South)"}, {"carrier": "parcll", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EXPWE (Expedited West)"}, {"carrier": "parcll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "EXPBNE (Expedited - Northeast)"}, {"carrier": "parcll", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "REGWE (Regional West)"}, - {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "REGCE (Regional Central)"}, {"carrier": - "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "REGNE (Regional Northeast)"}, {"carrier": "parcll", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "REGEA (Regional East)"}, {"carrier": "parcll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "REGSO (Regional South)"}, - {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "CAECOWE (US to CA Economy)"}, {"carrier": - "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "CAECOCE (US to CA Economy)"}, {"carrier": "parcll", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "CAECONE (US to CA Economy)"}, {"carrier": "parcll", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "EUECOWE - (US to Europe Economy)"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "Passport", "name": "passportglobal", "predefined_packages": - [], "service_levels": [], "shipment_options": [], "supported_features": []}, - {"human_readable": "PostNL", "name": "postnl", "predefined_packages": [], - "service_levels": [], "shipment_options": [], "supported_features": []}, {"human_readable": - "Purolator", "name": "purolator", "predefined_packages": [{"carrier": "purolator", - "description": null, "dimensions": [], "human_readable": "CustomerPackaging", - "max_weight": null, "name": "CUSTOMERPACKAGING"}, {"carrier": "purolator", - "description": null, "dimensions": [], "human_readable": "ExpressPack", "max_weight": - null, "name": "EXPRESSPACK"}, {"carrier": "purolator", "description": null, - "dimensions": [], "human_readable": "ExpressBox", "max_weight": null, "name": - "EXPRESSBOX"}, {"carrier": "purolator", "description": null, "dimensions": - [], "human_readable": "ExpressEnvelope", "max_weight": null, "name": "EXPRESSENVELOPE"}], - "service_levels": [{"carrier": "purolator", "description": null, "dimensions": - [], "human_readable": "Purolator Express", "max_weight": null, "name": "PurolatorExpress"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express 12PM", "max_weight": null, "name": "PurolatorExpress12PM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack 12PM", "max_weight": null, "name": "PurolatorExpressPack12PM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box 12PM", "max_weight": null, "name": "PurolatorExpressBox12PM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope 12PM", "max_weight": null, "name": "PurolatorExpressEnvelope12PM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express 10:30AM", "max_weight": null, "name": "PurolatorExpress1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express 9AM", "max_weight": null, "name": "PurolatorExpress9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box", "max_weight": null, "name": "PurolatorExpressBox"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box 10:30AM", "max_weight": null, "name": "PurolatorExpressBox1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box 9AM", "max_weight": null, "name": "PurolatorExpressBox9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box Evening", "max_weight": null, "name": "PurolatorExpressBoxEvening"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box International", "max_weight": null, "name": "PurolatorExpressBoxInternational"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box US", "max_weight": null, "name": "PurolatorExpressBoxUS"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope", "max_weight": null, "name": "PurolatorExpressEnvelope"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope 10:30AM", "max_weight": null, "name": "PurolatorExpressEnvelope1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope 9AM", "max_weight": null, "name": "PurolatorExpressEnvelope9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope Evening", "max_weight": null, "name": "PurolatorExpressEnvelopeEvening"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope International", "max_weight": null, "name": "PurolatorExpressEnvelopeInternational"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope US", "max_weight": null, "name": "PurolatorExpressEnvelopeUS"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Evening", "max_weight": null, "name": "PurolatorExpressEvening"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express International", "max_weight": null, "name": "PurolatorExpressInternational"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express International 10:30AM", "max_weight": null, "name": "PurolatorExpressInternational1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express International 12:00", "max_weight": null, "name": "PurolatorExpressInternational1200"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express International 9AM", "max_weight": null, "name": "PurolatorExpressInternational9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box International 10:30AM", "max_weight": null, "name": - "PurolatorExpressBoxInternational1030AM"}, {"carrier": "purolator", "description": - null, "dimensions": [], "human_readable": "Purolator Express Box International - 12:00", "max_weight": null, "name": "PurolatorExpressBoxInternational1200"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box International 9AM", "max_weight": null, "name": "PurolatorExpressBoxInternational9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope International 10:30AM", "max_weight": null, "name": - "PurolatorExpressEnvelopeInternational1030AM"}, {"carrier": "purolator", "description": - null, "dimensions": [], "human_readable": "Purolator Express Envelope International - 12:00", "max_weight": null, "name": "PurolatorExpressEnvelopeInternational1200"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope International 9AM", "max_weight": null, "name": - "PurolatorExpressEnvelopeInternational9AM"}, {"carrier": "purolator", "description": - null, "dimensions": [], "human_readable": "Purolator Express Pack International - 10:30AM", "max_weight": null, "name": "PurolatorExpressPackInternational1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack International 12:00", "max_weight": null, "name": - "PurolatorExpressPackInternational1200"}, {"carrier": "purolator", "description": - null, "dimensions": [], "human_readable": "Purolator Express Pack International - 9AM", "max_weight": null, "name": "PurolatorExpressPackInternational9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack", "max_weight": null, "name": "PurolatorExpressPack"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack 10:30AM", "max_weight": null, "name": "PurolatorExpressPack1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack 9AM", "max_weight": null, "name": "PurolatorExpressPack9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack Evening", "max_weight": null, "name": "PurolatorExpressPackEvening"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack International", "max_weight": null, "name": "PurolatorExpressPackInternational"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack US", "max_weight": null, "name": "PurolatorExpressPackUS"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express US", "max_weight": null, "name": "PurolatorExpressUS"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express US 10:30AM", "max_weight": null, "name": "PurolatorExpressUS1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express US 12:00", "max_weight": null, "name": "PurolatorExpressUS1200"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express US 9AM", "max_weight": null, "name": "PurolatorExpressUS9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box US 10:30AM", "max_weight": null, "name": "PurolatorExpressBoxUS1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box US 12:00", "max_weight": null, "name": "PurolatorExpressBoxUS1200"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Box US 9AM", "max_weight": null, "name": "PurolatorExpressBoxUS9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope US 10:30AM", "max_weight": null, "name": "PurolatorExpressEnvelopeUS1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope US 12:00", "max_weight": null, "name": "PurolatorExpressEnvelopeUS1200"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Envelope US 9AM", "max_weight": null, "name": "PurolatorExpressEnvelopeUS9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack US 10:30AM", "max_weight": null, "name": "PurolatorExpressPackUS1030AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack US 12:00", "max_weight": null, "name": "PurolatorExpressPackUS1200"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Express Pack US 9AM", "max_weight": null, "name": "PurolatorExpressPackUS9AM"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Ground", "max_weight": null, "name": "PurolatorGround"}, {"carrier": - "purolator", "description": null, "dimensions": [], "human_readable": "Purolator - Ground 10:30AM", "max_weight": null, "name": "PurolatorGround1030AM"}, {"carrier": - "purolator", "description": null, "dimensions": [], "human_readable": "Purolator - Ground 9AM", "max_weight": null, "name": "PurolatorGround9AM"}, {"carrier": - "purolator", "description": null, "dimensions": [], "human_readable": "Purolator - Ground 12PM", "max_weight": null, "name": "PurolatorGround12PM"}, {"carrier": - "purolator", "description": null, "dimensions": [], "human_readable": "Purolator - Ground Distribution", "max_weight": null, "name": "PurolatorGroundDistribution"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Ground Evening", "max_weight": null, "name": "PurolatorGroundEvening"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Ground US", "max_weight": null, "name": "PurolatorGroundUS"}, {"carrier": - "purolator", "description": null, "dimensions": [], "human_readable": "Purolator - Quick Ship", "max_weight": null, "name": "PurolatorQuickShip"}, {"carrier": - "purolator", "description": null, "dimensions": [], "human_readable": "Purolator - Quick Ship Envelope", "max_weight": null, "name": "PurolatorQuickShipEnvelope"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Quick Ship Pack", "max_weight": null, "name": "PurolatorQuickShipPack"}, - {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": - "Purolator Quick Ship Box", "max_weight": null, "name": "PurolatorQuickShipBox"}], - "shipment_options": [], "supported_features": [{"carrier": "purolator", "description": - null, "name": "labels", "supported": true}, {"carrier": "purolator", "description": - null, "name": "orders", "supported": true}, {"carrier": "purolator", "description": - null, "name": "pickups", "supported": true}, {"carrier": "purolator", "description": - "Purolator bills at the end of the day for all labels created that day. You - cannot refund a label after the end of the day it was created.", "name": "refunds", - "supported": true}, {"carrier": "purolator", "description": null, "name": - "returns", "supported": true}, {"carrier": "purolator", "description": null, - "name": "scanforms", "supported": true}, {"carrier": "purolator", "description": - null, "name": "rating", "supported": true}, {"carrier": "purolator", "description": - null, "name": "tracking", "supported": true}, {"carrier": "purolator", "description": - null, "name": "bill_on_delivery", "supported": true}, {"carrier": "purolator", - "description": null, "name": "commercial_invoices", "supported": true}, {"carrier": - "purolator", "description": null, "name": "sort_codes", "supported": false}, - {"carrier": "purolator", "description": null, "name": "test_environment", - "supported": true}]}, {"human_readable": "Royal Mail", "name": "royalmail", - "predefined_packages": [{"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "LARGELETTER"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "SMALLPARCEL"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "MEDIUMPARCEL"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "LETTER"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "PRINTEDPAPER"}], "service_levels": [{"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "InternationalPriority"}, {"carrier": "royalmail", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InternationalEconomy"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalStandard"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "InternationalTrackedAndSigned"}, - {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InternationalTracked"}, {"carrier": "royalmail", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InternationalSigned"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "AccountMail"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "RoyalMailUnsigned"}, - {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "RoyalMail"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "SpecialDeliveryGuaranteed"}, {"carrier": "royalmail", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "SpecialDeliveryGuaranteed1pm"}, - {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "SpecialDeliveryGuaranteed9am"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "StandardLetter"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Tracked24"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Tracked24HighVolume"}, - {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Tracked24HighVolumeSignature"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Tracked24LBT"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Tracked24SignatureLBT"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Tracked48LBT"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Tracked48SignatureLBT"}, {"carrier": "royalmail", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Tracked24Signature"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Tracked48"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Tracked48HighVolume"}, - {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Tracked48HighVolumeSignature"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Tracked48Signature"}, {"carrier": "royalmail", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "TrackedReturns24"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "TrackedReturns48"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "CrossBorderImportTracked48HighVolume"}], - "shipment_options": [{"carrier": "royalmail", "deprecated": false, "description": - null, "human_readable": "Carrier Insurance Amount", "name": "carrier_insurance_amount", - "type": "float"}, {"carrier": "royalmail", "deprecated": false, "description": - null, "human_readable": "Carrier Notification Email", "name": "carrier_notification_email", - "type": "boolean"}, {"carrier": "royalmail", "deprecated": false, "description": - null, "human_readable": "Carrier Notification Sms", "name": "carrier_notification_sms", - "type": "boolean"}, {"carrier": "royalmail", "deprecated": true, "description": - null, "human_readable": "Date Advance", "name": "date_advance", "type": "integer"}, - {"carrier": "royalmail", "deprecated": true, "description": null, "human_readable": - "Delivered Duty Paid", "name": "delivered_duty_paid", "type": "boolean"}, - {"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": - "Delivery Confirmation", "name": "delivery_confirmation", "type": "string"}, - {"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": - "Handling Instructions", "name": "handling_instructions", "type": "string"}, - {"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": - "Import Federal Tax Id", "name": "import_federal_tax_id", "type": "string"}, - {"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": - "Incoterm", "name": "incoterm", "type": "enum"}, {"carrier": "royalmail", - "deprecated": false, "description": null, "human_readable": "Invoice Number", - "name": "invoice_number", "type": "string"}, {"carrier": "royalmail", "deprecated": - false, "description": null, "human_readable": "Label Date", "name": "label_date", - "type": "datetime"}, {"carrier": "royalmail", "deprecated": false, "description": - null, "human_readable": "Label Format", "name": "label_format", "type": "string"}, - {"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": - "License Number", "name": "license_number", "type": "string"}, {"carrier": - "royalmail", "deprecated": true, "description": null, "human_readable": "Print - Custom 1", "name": "print_custom_1", "type": "string"}, {"carrier": "royalmail", - "deprecated": true, "description": null, "human_readable": "Print Custom 2", - "name": "print_custom_2", "type": "string"}, {"carrier": "royalmail", "deprecated": - false, "description": null, "human_readable": "Saturday Delivery", "name": - "saturday_delivery", "type": "boolean"}], "supported_features": [{"carrier": - "royalmail", "description": null, "name": "labels", "supported": true}, {"carrier": - "royalmail", "description": null, "name": "orders", "supported": false}, {"carrier": - "royalmail", "description": null, "name": "pickups", "supported": false}, - {"carrier": "royalmail", "description": null, "name": "refunds", "supported": - true}, {"carrier": "royalmail", "description": null, "name": "returns", "supported": - true}, {"carrier": "royalmail", "description": null, "name": "scanforms", - "supported": true}, {"carrier": "royalmail", "description": null, "name": - "rating", "supported": true}, {"carrier": "royalmail", "description": null, - "name": "tracking", "supported": true}, {"carrier": "royalmail", "description": - null, "name": "bill_on_label_purchase", "supported": false}, {"carrier": "royalmail", - "description": null, "name": "bill_on_delivery", "supported": false}, {"carrier": - "royalmail", "description": null, "name": "bill_on_scan", "supported": false}, - {"carrier": "royalmail", "description": null, "name": "bill_on_manifest", - "supported": true}, {"carrier": "royalmail", "description": null, "name": - "commercial_invoices", "supported": false}, {"carrier": "royalmail", "description": - null, "name": "delivers_to_po_box", "supported": true}, {"carrier": "royalmail", - "description": null, "name": "sort_codes", "supported": true}, {"carrier": - "royalmail", "description": null, "name": "test_environment", "supported": - true}]}, {"human_readable": "SEKO OmniParcel", "name": "sekoomniparcel", "predefined_packages": - [{"carrier": "sekoomniparcel", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Bag"}, {"carrier": "sekoomniparcel", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Box"}, {"carrier": "sekoomniparcel", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Carton"}, {"carrier": - "sekoomniparcel", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Container"}, {"carrier": "sekoomniparcel", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Crate"}, {"carrier": "sekoomniparcel", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Envelope"}, - {"carrier": "sekoomniparcel", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Pail"}, {"carrier": "sekoomniparcel", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Pallet"}, {"carrier": "sekoomniparcel", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Satchel"}, {"carrier": - "sekoomniparcel", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Tub"}], "service_levels": [{"carrier": - "sekoomniparcel", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Ecommerce Standard Tracked"}, {"carrier": - "sekoomniparcel", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Ecommerce Express Tracked"}, {"carrier": - "sekoomniparcel", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Domestic Express"}, {"carrier": "sekoomniparcel", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Domestic Standard"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Sendle", "name": "sendle", "predefined_packages": - [], "service_levels": [{"carrier": "sendle", "description": null, "dimensions": - [], "human_readable": "Standard", "max_weight": null, "name": "Standard"}, - {"carrier": "sendle", "description": null, "dimensions": [], "human_readable": - "Express", "max_weight": null, "name": "Express"}], "shipment_options": [], - "supported_features": []}, {"human_readable": "SF Express", "name": "sfexpress", - "predefined_packages": [], "service_levels": [{"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalStandardExpressDoc"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalStandardExpressParcel"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalEconomyExpressPilot"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalEconomyExpressDoc"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalEconomyExpressParcel"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DomesticExpress"}, {"carrier": "sfexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DomesticStandard"}, - {"carrier": "sfexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DomesticIntraCity"}, {"carrier": "sfexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "StandardExpress"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EconomyExpress"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "SmartKargo", "name": "smartkargo", "predefined_packages": [], "service_levels": - [{"carrier": "smartkargo", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "EPR"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Sonic", "name": "sonic", "predefined_packages": [], - "service_levels": [{"carrier": "sonic", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "NEXTDAY"}, {"carrier": - "sonic", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "SAMEDAY"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "Spee-Dee", "name": "speedee", "predefined_packages": [], - "service_levels": [{"carrier": "speedee", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SpeeDeeDelivery"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "Swyft", - "name": "swyft", "predefined_packages": [], "service_levels": [{"carrier": - "swyft", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "NEXTDAY"}, {"carrier": "swyft", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SAMEDAY"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "TForce Logistics", "name": - "tforce", "predefined_packages": [], "service_levels": [{"carrier": "tforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "NextDay"}, {"carrier": "tforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Return"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Toll", "name": "toll", - "predefined_packages": [], "service_levels": [{"carrier": "toll", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "IPEC Direct"}, {"carrier": "toll", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "IPEC Fashion"}, {"carrier": - "toll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "IPEC Local"}, {"carrier": "toll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "IPEC Priority"}, - {"carrier": "toll", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "IPEC Road Express"}, {"carrier": "toll", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "IPEC Sensitive"}, {"carrier": "toll", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "IPEC - VicEXP"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "UDS", "name": "uds", "predefined_packages": [], "service_levels": [{"carrier": - "uds", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DeliveryService"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "UPS", "name": "ups", "predefined_packages": [{"carrier": - "ups", "description": null, "dimensions": ["12.5in - 15in x 9.5in"], "human_readable": - null, "max_weight": 16.0, "name": "UPSLetter"}, {"carrier": "ups", "description": - null, "dimensions": ["12.5in x 3.75in x 18in"], "human_readable": null, "max_weight": - 480.0, "name": "UPSExpressBox"}, {"carrier": "ups", "description": null, "dimensions": - ["19.75in x 17.75in x 13.25in"], "human_readable": null, "max_weight": 880.0, - "name": "UPS25kgBox"}, {"carrier": "ups", "description": null, "dimensions": - ["16.5in x 13.25in x 10.75in"], "human_readable": null, "max_weight": 352.0, - "name": "UPS10kgBox"}, {"carrier": "ups", "description": "Triangular tube - for rolled papers", "dimensions": ["38in x 6in x 6in"], "human_readable": - null, "max_weight": null, "name": "Tube"}, {"carrier": "ups", "description": - null, "dimensions": ["16in x 12.75in"], "human_readable": null, "max_weight": - null, "name": "Pak"}, {"carrier": "ups", "description": null, "dimensions": - ["13in x 11in x 2in"], "human_readable": null, "max_weight": 480.0, "name": - "SmallExpressBox"}, {"carrier": "ups", "description": null, "dimensions": - ["16in x 11in x 3in"], "human_readable": null, "max_weight": 480.0, "name": - "MediumExpressBox"}, {"carrier": "ups", "description": null, "dimensions": - ["18in x 13in x 3in"], "human_readable": null, "max_weight": 480.0, "name": - "LargeExpressBox"}], "service_levels": [{"carrier": "ups", "description": - "1-5 Business Days", "dimensions": null, "human_readable": "UPS Ground", "max_weight": - null, "name": "Ground"}, {"carrier": "ups", "description": "1-5 Business Days", - "dimensions": null, "human_readable": "UPS Standard", "max_weight": null, - "name": "UPSStandard"}, {"carrier": "ups", "description": "Next Day to 4 Business - Days", "dimensions": null, "human_readable": "UPS Worldwide Saver", "max_weight": - null, "name": "UPSSaver"}, {"carrier": "ups", "description": "Next Day to - 3 Business Days", "dimensions": null, "human_readable": "UPS Worldwide Express", - "max_weight": null, "name": "Express"}, {"carrier": "ups", "description": - "Next Day to 2 Business Days", "dimensions": null, "human_readable": "UPS - Worldwide Express Plus", "max_weight": null, "name": "ExpressPlus"}, {"carrier": - "ups", "description": "3 to 5 Business Days", "dimensions": null, "human_readable": - "UPS Worldwide Expedited", "max_weight": null, "name": "Expedited"}, {"carrier": - "ups", "description": "Next Business Day by 10:30am", "dimensions": null, - "human_readable": "UPS Next Day Air", "max_weight": null, "name": "NextDayAir"}, - {"carrier": "ups", "description": "Next Business Day by 3:00pm", "dimensions": - null, "human_readable": "UPS Next Day Air Saver", "max_weight": null, "name": - "NextDayAirSaver"}, {"carrier": "ups", "description": "Next Business Days - by 8:00am", "dimensions": null, "human_readable": "UPS Next Day Air A.M.", - "max_weight": null, "name": "NextDayAirEarlyAM"}, {"carrier": "ups", "description": - "2 Business Days by end of day", "dimensions": null, "human_readable": "UPS - 2nd Day Air", "max_weight": null, "name": "2ndDayAir"}, {"carrier": "ups", - "description": null, "dimensions": null, "human_readable": null, "max_weight": - null, "name": "2ndDayAirAM"}, {"carrier": "ups", "description": "3 Business - Days by end of day", "dimensions": null, "human_readable": "UPS 3-Day Select", - "max_weight": null, "name": "3DaySelect"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "UPS iParcel", "name": "upsiparcel", "predefined_packages": - [], "service_levels": [], "shipment_options": [], "supported_features": []}, - {"human_readable": "UPS Mail Innovations", "name": "upsmailinnovations", "predefined_packages": - [], "service_levels": [{"carrier": "upsmailinnovations", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "EconomyMailInnovations"}, - {"carrier": "upsmailinnovations", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpeditedMailInnovations"}, {"carrier": - "upsmailinnovations", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "First"}, {"carrier": "upsmailinnovations", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Priority"}, {"carrier": "upsmailinnovations", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PriorityMailInnovations"}, {"carrier": "upsmailinnovations", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "SingleReturns"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "USPS", "name": "usps", "predefined_packages": [{"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Card"}, {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Letter"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Flat"}, {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FlatRateEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FlatRateLegalEnvelope"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FlatRatePaddedEnvelope"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FlatRateGiftCardEnvelope"}, - {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FlatRateWindowEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FlatRateCardboardEnvelope"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "SmallFlatRateEnvelope"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Parcel"}, {"carrier": - "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "SoftPack"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SmallFlatRateBox"}, - {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "MediumFlatRateBox"}, {"carrier": "usps", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "LargeFlatRateBox"}, {"carrier": "usps", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "LargeFlatRateBoxAPOFPO"}, - {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FlatTubTrayBox"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EMMTrayBox"}, {"carrier": "usps", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "FullTrayBox"}, {"carrier": - "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "HalfTrayBox"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "PMODSack"}], "service_levels": - [{"carrier": "usps", "description": "1-3 days", "dimensions": ["22in x 18in - x 15in"], "human_readable": null, "max_weight": 15.99, "name": "First"}, {"carrier": - "usps", "description": "2-3 days", "dimensions": ["Combined Length and Girth - < 108in"], "human_readable": null, "max_weight": 1120.0, "name": "Priority"}, - {"carrier": "usps", "description": "1-2 days", "dimensions": ["Combined Length - and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, "name": - "Express"}, {"carrier": "usps", "description": "2-8 business days", "dimensions": - ["Combined Length and Girth < 108in"], "human_readable": null, "max_weight": - 1120.0, "name": "ParcelSelect"}, {"carrier": "usps", "description": "2-8 business - days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "LibraryMail"}, {"carrier": "usps", "description": - "2-8 business days", "dimensions": ["Combined Length and Girth < 108in"], - "human_readable": null, "max_weight": 1120.0, "name": "MediaMail"}, {"carrier": - "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FirstClassMailInternational"}, {"carrier": "usps", "description": - "7-21 days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 64.0, "name": "FirstClassPackageInternationalService"}, - {"carrier": "usps", "description": "6-10 business days", "dimensions": ["Combined - Length and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, - "name": "PriorityMailInternational"}, {"carrier": "usps", "description": "3-5 - business days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "ExpressMailInternational"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Veho", "name": "veho", - "predefined_packages": [], "service_levels": [{"carrier": "veho", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "nextDay"}, {"carrier": "veho", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "sameDay"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Yanwen", "name": "yanwen", "predefined_packages": - [], "service_levels": [], "shipment_options": [], "supported_features": []}]}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '128746' - content-type: - - application/json; charset=utf-8 - etag: - - W/"0b770e61a0767b4c16d7670d9fc5cf01" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - vary: - - Origin - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 477e8d8364626270e786c9210019fc4d - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb8nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 - x-runtime: - - '0.148368' - x-version-label: - - easypost-202305122104-29dd2d738a-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/test_beta_retrieve_carrier_metadata_with_filters.yaml b/tests/cassettes/test_beta_retrieve_carrier_metadata_with_filters.yaml deleted file mode 100644 index 4e0a2114..00000000 --- a/tests/cassettes/test_beta_retrieve_carrier_metadata_with_filters.yaml +++ /dev/null @@ -1,124 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - authorization: - - - user-agent: - - - method: GET - uri: https://api.easypost.com/beta/metadata?carriers=usps&types=service_levels%2Cpredefined_packages - response: - body: - string: '{"carriers": [{"human_readable": "USPS", "name": "usps", "predefined_packages": - [{"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Card"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Letter"}, {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Flat"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FlatRateEnvelope"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FlatRateLegalEnvelope"}, - {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FlatRatePaddedEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FlatRateGiftCardEnvelope"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FlatRateWindowEnvelope"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FlatRateCardboardEnvelope"}, - {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "SmallFlatRateEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Parcel"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SoftPack"}, {"carrier": - "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "SmallFlatRateBox"}, {"carrier": "usps", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "MediumFlatRateBox"}, - {"carrier": "usps", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "LargeFlatRateBox"}, {"carrier": "usps", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "LargeFlatRateBoxAPOFPO"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FlatTubTrayBox"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "EMMTrayBox"}, {"carrier": - "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FullTrayBox"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "HalfTrayBox"}, {"carrier": - "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PMODSack"}], "service_levels": [{"carrier": "usps", "description": - "1-3 days", "dimensions": ["22in x 18in x 15in"], "human_readable": null, - "max_weight": 15.99, "name": "First"}, {"carrier": "usps", "description": - "2-3 days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "Priority"}, {"carrier": "usps", "description": - "1-2 days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "Express"}, {"carrier": "usps", "description": - "2-8 business days", "dimensions": ["Combined Length and Girth < 108in"], - "human_readable": null, "max_weight": 1120.0, "name": "ParcelSelect"}, {"carrier": - "usps", "description": "2-8 business days", "dimensions": ["Combined Length - and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, "name": - "LibraryMail"}, {"carrier": "usps", "description": "2-8 business days", "dimensions": - ["Combined Length and Girth < 108in"], "human_readable": null, "max_weight": - 1120.0, "name": "MediaMail"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FirstClassMailInternational"}, - {"carrier": "usps", "description": "7-21 days", "dimensions": ["Combined Length - and Girth < 108in"], "human_readable": null, "max_weight": 64.0, "name": "FirstClassPackageInternationalService"}, - {"carrier": "usps", "description": "6-10 business days", "dimensions": ["Combined - Length and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, - "name": "PriorityMailInternational"}, {"carrier": "usps", "description": "3-5 - business days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "ExpressMailInternational"}]}]}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '4207' - content-type: - - application/json; charset=utf-8 - etag: - - W/"a842c1378a5f4d5f9ad9956312671ebe" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - vary: - - Origin - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 477e8d8564626270e786c9220019fcab - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb11nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb1nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 - x-runtime: - - '0.025861' - x-version-label: - - easypost-202305122104-29dd2d738a-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/test_beta_retrieve_stateless_rates.yaml b/tests/cassettes/test_beta_retrieve_stateless_rates.yaml index d9271484..e8cdc8ba 100644 --- a/tests/cassettes/test_beta_retrieve_stateless_rates.yaml +++ b/tests/cassettes/test_beta_retrieve_stateless_rates.yaml @@ -32,50 +32,31 @@ interactions: "to_address": {"object": "Address", "name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": ""}, "rates": [{"object": + "Rate", "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": "Rate", "mode": "test", "service": "Priority", "carrier": "USPS", "rate": - "7.15", "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", - "list_rate": "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + "7.42", "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", + "list_rate": "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": - "Rate", "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", - "currency": "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": - "6.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + "Rate", "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": + "6.07", "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", + "list_rate": "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 3, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": - "Rate", "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"object": - "Rate", "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": - "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", - "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "options": + 3, "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "parcel": {"object": "Parcel", "length": 10.0, "width": 8.0, "height": 4.0, "weight": - 15.4}, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}]}' + 15.4}, "messages": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '3061' + - '1705' content-type: - application/json; charset=utf-8 - etag: - - W/"046736d5146c150a74222e444529b376" expires: - '0' pragma: @@ -95,21 +76,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 477e8d8364626271e786c9230019fce9 + - 8e8eb62767c9fbe7e2b9777500186df3 x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb33nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.826286' + - '0.109833' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_carrier_account_all.yaml b/tests/cassettes/test_carrier_account_all.yaml index ecf7202b..74b57ac9 100644 --- a/tests/cassettes/test_carrier_account_all.yaml +++ b/tests/cassettes/test_carrier_account_all.yaml @@ -20,50 +20,14 @@ interactions: "type": "UspsAccount", "clone": false, "created_at": "2017-03-01T03:01:34Z", "updated_at": "2018-08-09T02:45:22Z", "description": "USPS Account", "reference": null, "billing_type": "easypost", "readable": "USPS", "logo": null, "fields": - [], "credentials": {}, "test_credentials": {}}, {"id": "ca_05ab5a0345634187b52daaf787aa4cd0", - "object": "CarrierAccount", "type": "LsoDefaultAccount", "clone": false, "created_at": - "2022-04-26T16:58:59Z", "updated_at": "2022-04-26T16:58:59Z", "description": - "LSO Account", "reference": null, "billing_type": "easypost", "readable": - "LSO", "logo": null, "fields": [], "credentials": {}, "test_credentials": - {}}, {"id": "ca_d38ae88b6edb48ed93c0a16ed068215b", "object": "CarrierAccount", - "type": "DhlExpressDefaultAccount", "clone": false, "created_at": "2022-04-26T16:59:02Z", - "updated_at": "2022-04-26T16:59:02Z", "description": "DHL Express Account", - "reference": null, "billing_type": "easypost", "readable": "DHL Express", - "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}, {"id": - "ca_c3cbbd21bc97400bbbaed6d030909476", "object": "CarrierAccount", "type": - "DhlEcsAccount", "clone": false, "created_at": "2022-08-15T18:51:36Z", "updated_at": - "2022-08-15T18:51:36Z", "description": "DHL eCommerce Solutions Account", - "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce Solutions", - "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}, {"id": - "ca_0d64fd488c1444cf9bc16f858703e28f", "object": "CarrierAccount", "type": - "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:15:15Z", "updated_at": - "2023-05-12T21:15:15Z", "description": "DHL eCommerce Solutions Account", - "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce Solutions", - "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}, {"id": - "ca_99007e1aeb66421faf82676f1199481e", "object": "CarrierAccount", "type": - "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:15:15Z", "updated_at": - "2023-05-12T21:15:15Z", "description": "DHL eCommerce Solutions Account", - "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce Solutions", - "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}, {"id": - "ca_711d8c4f9be54801b984e5dc9f2b5a7c", "object": "CarrierAccount", "type": - "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:15:16Z", "updated_at": - "2023-05-12T21:15:16Z", "description": "DHL eCommerce Solutions Account", - "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce Solutions", - "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}, {"id": - "ca_b1a0a1bc45844159812e0224d53948ea", "object": "CarrierAccount", "type": - "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:15:16Z", "updated_at": - "2023-05-12T21:15:16Z", "description": "DHL eCommerce Solutions Account", - "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce Solutions", - "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}]' + [], "credentials": {}, "test_credentials": {}}]' headers: cache-control: - private, no-cache, no-store content-length: - - '9147' + - '1068' content-type: - application/json; charset=utf-8 - etag: - - W/"d33e27ebefc317e9bd700eb7f9a8ee7b" expires: - '0' pragma: @@ -81,20 +45,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b54645ead1ae2aabe7f000e9b95 + - 8e8eb62867c9fbe9e2b9777c0018702a x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.123827' + - '0.036109' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_carrier_account_create.yaml b/tests/cassettes/test_carrier_account_create.yaml index e934e006..1efdf479 100644 --- a/tests/cassettes/test_carrier_account_create.yaml +++ b/tests/cassettes/test_carrier_account_create.yaml @@ -23,21 +23,18 @@ interactions: uri: https://api.easypost.com/v2/carrier_accounts response: body: - string: '{"id": "ca_812a1e8411fe44f18a3e7b2f8abab3de", "object": "CarrierAccount", - "type": "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:18:17Z", - "updated_at": "2023-05-12T21:18:17Z", "description": "DHL eCommerce Solutions - Account", "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce - Solutions", "logo": null, "fields": [], "credentials": {}, "test_credentials": - {}}' + string: '{"id": "ca_b3b0ce644621411badf5c1fb5bd388df", "object": "CarrierAccount", + "type": "DhlEcsAccount", "clone": false, "created_at": "2025-03-06T19:47:53Z", + "updated_at": "2025-03-06T19:47:53Z", "description": "DHL eCommerce Account", + "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '1469' + - '1369' content-type: - application/json; charset=utf-8 - etag: - - W/"da1ce6607939be1dbe95953bf72baed1" expires: - '0' pragma: @@ -55,20 +52,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00d645ead19e2aabe7d000daa09 + - 8e8eb62567c9fbe9e2b9777a00186f6d x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.110163' + - '0.153005' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -90,7 +87,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/carrier_accounts/ca_812a1e8411fe44f18a3e7b2f8abab3de + uri: https://api.easypost.com/v2/carrier_accounts/ca_b3b0ce644621411badf5c1fb5bd388df response: body: string: '{}' @@ -101,8 +98,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -120,20 +115,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00d645ead19e2aabe7d000daa11 + - 8e8eb62567c9fbe9e2b9777a00186fa1 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.114758' + - '0.054696' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_authenticated_user_api_keys.yaml b/tests/cassettes/test_carrier_account_create_amazon_shipping.yaml similarity index 52% rename from tests/cassettes/test_authenticated_user_api_keys.yaml rename to tests/cassettes/test_carrier_account_create_amazon_shipping.yaml index 521e54b3..eae66012 100644 --- a/tests/cassettes/test_authenticated_user_api_keys.yaml +++ b/tests/cassettes/test_carrier_account_create_amazon_shipping.yaml @@ -1,6 +1,6 @@ interactions: - request: - body: null + body: '{"carrier_account_oauth_registrations": {"type": "AmazonShippingAccount"}}' headers: Accept: - '*/*' @@ -8,31 +8,30 @@ interactions: - gzip, deflate Connection: - keep-alive + Content-Length: + - '74' + Content-Type: + - application/json authorization: - user-agent: - - method: GET - uri: https://api.easypost.com/v2/users + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register_oauth response: body: - string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": - null, "name": "EasyPost Python Client Library Tests", "phone_number": "", - "verified": true, "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": - false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": - "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", - "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": - "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": - "1.00", "email": "", "children": []}' + string: '{"id": "ca_18bfc1a27cc349cfbf219cf0e754f917", "object": "CarrierAccount", + "type": "AmazonShippingAccount", "clone": false, "created_at": "2025-04-10T19:12:34Z", + "updated_at": "2025-04-10T19:12:34Z", "description": null, "reference": null, + "billing_type": "carrier", "readable": "Amazon Shipping", "logo": null, "fields": + [], "credentials": {}, "test_credentials": {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '601' + - '1448' content-type: - application/json; charset=utf-8 - etag: - - W/"37fad0de2fa69ce547baa7b7ecd8f745" expires: - '0' pragma: @@ -45,32 +44,30 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 52975b54645e93e8e2cc319b00062464 + - 028443c067f81822e2bbac9c00135101 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 284c5d344a + - extlb1nuq 99aac35317 x-runtime: - - '0.050837' + - '0.225842' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202504101604-e81adf64e4-master x-xss-protection: - 1; mode=block status: - code: 200 - message: OK + code: 201 + message: Created - request: body: null headers: @@ -80,29 +77,24 @@ interactions: - gzip, deflate Connection: - keep-alive + Content-Length: + - '0' authorization: - user-agent: - - method: GET - uri: https://api.easypost.com/v2/api_keys + method: DELETE + uri: https://api.easypost.com/v2/carrier_accounts/ca_18bfc1a27cc349cfbf219cf0e754f917 response: body: - string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "keys": [{"object": - "ApiKey", "active": true, "key": "", "mode": "test", "created_at": - "2022-02-24T20:59:05Z", "id": "ak_16f993eae7984eab94e0957a78bee407"}, {"object": - "ApiKey", "active": true, "key": "", "mode": "production", "created_at": - "2022-02-24T20:59:14Z", "id": "ak_62524a9c3f684f65ab9eccbf70950df8"}], "children": - []}' + string: '{}' headers: cache-control: - private, no-cache, no-store content-length: - - '463' + - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"93631940720c42f55c0b598f97083e11" expires: - '0' pragma: @@ -120,20 +112,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b54645e93e8e2cc319b0006246e + - 028443c067f81822e2bbac9c00135164 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 284c5d344a + - extlb1nuq 99aac35317 x-runtime: - - '0.031562' + - '0.056642' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202504101604-e81adf64e4-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_carrier_account_create_ups.yaml b/tests/cassettes/test_carrier_account_create_ups.yaml new file mode 100644 index 00000000..0a5daabc --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_ups.yaml @@ -0,0 +1,135 @@ +interactions: +- request: + body: '{"carrier_account_oauth_registrations": {"type": "UpsAccount", "account_number": + "123456789"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '94' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register_oauth + response: + body: + string: '{"id": "ca_b42eeb389ad6481698e3aff5002502c3", "object": "CarrierAccount", + "type": "UpsAccount", "clone": false, "created_at": "2025-05-23T19:13:53Z", + "updated_at": "2025-05-23T19:13:53Z", "description": null, "reference": null, + "billing_type": "carrier", "readable": "UPS", "logo": null, "fields": [], + "credentials": {}, "test_credentials": {}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1416' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6be4a8f16830c8f1e787301c003e936f + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb59nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 668d3fc830 + - extlb1nuq 99aac35317 + x-runtime: + - '0.104749' + x-version-label: + - easypost-202505231841-d89645a184-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/carrier_accounts/ca_b42eeb389ad6481698e3aff5002502c3 + response: + body: + string: '{}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6be4a8f16830c8f1e787301c003e9394 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb41nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 668d3fc830 + - extlb1nuq 99aac35317 + x-runtime: + - '0.065988' + x-version-label: + - easypost-202505231841-d89645a184-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_AmazonShippingAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_AmazonShippingAccount.yaml new file mode 100644 index 00000000..ab9b0da5 --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_AmazonShippingAccount.yaml @@ -0,0 +1,142 @@ +interactions: +- request: + body: '{"carrier_account_oauth_registrations": {"type": "AmazonShippingAccount"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '74' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register_oauth + response: + body: + string: '{"id": "ca_f5ee71bc1d49489d9f9c13d210f393fb", "object": "CarrierAccount", + "type": "AmazonShippingAccount", "clone": false, "created_at": "2026-10-15T20:04:32Z", + "updated_at": "2026-10-15T20:04:32Z", "description": null, "reference": null, + "billing_type": "carrier", "readable": "Amazon Shipping", "logo": null, "fields": + [], "credentials": {}, "test_credentials": {}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1753' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7ff0b0716ad131d0e2ba14b7005c4820 + x-frame-options: + - SAMEORIGIN + x-node: + - web108azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4azw f29267e751 + - extlb2azw ff4cfe6eb5 + x-runtime: + - '0.119564' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/carrier_accounts/ca_f5ee71bc1d49489d9f9c13d210f393fb + response: + body: + string: '{}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - add87ec86ad131d1e2ba14b80058ad37 + x-frame-options: + - SAMEORIGIN + x-node: + - web124azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb1azw f29267e751 + - extlb3azw ff4cfe6eb5 + x-runtime: + - '0.076582' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_FedexAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_FedexAccount.yaml new file mode 100644 index 00000000..3af6f367 --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_FedexAccount.yaml @@ -0,0 +1,74 @@ +interactions: +- request: + body: '{"carrier_account": {"type": "FedexAccount", "registration_data": {}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '70' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register + response: + body: + string: '{"error": {"code": "GONE", "message": "The requested resource is no + longer available at the server and no forwarding address is known.", "errors": + [{"message": "FedEx account registrations must use the multi-factor authentication + (MFA) registration workflow. See: https://support.easypost.com/hc/en-us/articles/35262738410253-FedEx-Multi-Factor-Authentication"}]}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '357' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - aebfacaf6ad131d0e2ba149e0058abce + x-frame-options: + - SAMEORIGIN + x-node: + - web107azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4azw f29267e751 + - extlb3azw ff4cfe6eb5 + x-runtime: + - '0.042922' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 410 + message: Gone +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_FedexDefaultAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_FedexDefaultAccount.yaml new file mode 100644 index 00000000..16a770ad --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_FedexDefaultAccount.yaml @@ -0,0 +1,78 @@ +interactions: +- request: + body: '{"carrier_account": {"type": "FedexDefaultAccount", "registration_data": + {}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '77' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/open + response: + body: + string: '{"error": {"code": "UNPROCESSABLE_ENTITY", "message": "The request + was understood, but cannot be processed.", "errors": [{"field": "name", "message": + "is missing"}, {"field": "street1", "message": "is missing"}, {"field": "city", + "message": "is missing"}, {"field": "state", "message": "is missing"}, {"field": + "postal_code", "message": "is missing"}, {"field": "country", "message": "is + missing"}, {"field": "phone", "message": "is missing"}, {"field": "email", + "message": "is missing"}]}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '453' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 97548db56ad131cee2ba1496005e01b6 + x-frame-options: + - SAMEORIGIN + x-node: + - web107azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3azw f29267e751 + - extlb1azw ff4cfe6eb5 + x-runtime: + - '0.027957' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 422 + message: Unprocessable Entity +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_FedexSmartpostAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_FedexSmartpostAccount.yaml new file mode 100644 index 00000000..0248eccd --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_FedexSmartpostAccount.yaml @@ -0,0 +1,75 @@ +interactions: +- request: + body: '{"carrier_account": {"type": "FedexSmartpostAccount", "registration_data": + {}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '79' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register + response: + body: + string: '{"error": {"code": "GONE", "message": "The requested resource is no + longer available at the server and no forwarding address is known.", "errors": + [{"message": "FedEx account registrations must use the multi-factor authentication + (MFA) registration workflow. See: https://support.easypost.com/hc/en-us/articles/35262738410253-FedEx-Multi-Factor-Authentication"}]}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '357' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - cb7ede806ad131d0e2ba149f005e0635 + x-frame-options: + - SAMEORIGIN + x-node: + - web127azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3azw f29267e751 + - extlb1azw ff4cfe6eb5 + x-runtime: + - '0.042996' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 410 + message: Gone +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_GofoWalletAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_GofoWalletAccount.yaml new file mode 100644 index 00000000..9c7a226b --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_GofoWalletAccount.yaml @@ -0,0 +1,143 @@ +interactions: +- request: + body: '{"carrier_account": {"type": "GofoWalletAccount", "registration_data": + {}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '75' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/open + response: + body: + string: '{"id": "ca_beb5806670fc4518b58f0ef6969616fd", "object": "CarrierAccount", + "type": "GofoWalletAccount", "clone": false, "created_at": "2026-10-15T20:04:31Z", + "updated_at": "2026-10-15T20:04:31Z", "description": "GOFO Wallet Account", + "reference": null, "billing_type": "easypost", "readable": "GOFO Wallet", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '460' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 2cad6c3f6ad131cfe2ba1497005c43e8 + x-frame-options: + - SAMEORIGIN + x-node: + - web124azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb1azw f29267e751 + - extlb2azw ff4cfe6eb5 + x-runtime: + - '0.071176' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/carrier_accounts/ca_beb5806670fc4518b58f0ef6969616fd + response: + body: + string: '{}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - add87ec56ad131cfe2ba14980058a8a4 + x-frame-options: + - SAMEORIGIN + x-node: + - web116azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3azw f29267e751 + - extlb3azw ff4cfe6eb5 + x-runtime: + - '0.070445' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_UniUniWalletAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_UniUniWalletAccount.yaml new file mode 100644 index 00000000..b37551a8 --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_UniUniWalletAccount.yaml @@ -0,0 +1,143 @@ +interactions: +- request: + body: '{"carrier_account": {"type": "UniUniWalletAccount", "registration_data": + {}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '77' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/open + response: + body: + string: '{"id": "ca_057c0400d9e6445eaca363a46156e047", "object": "CarrierAccount", + "type": "UniUniWalletAccount", "clone": false, "created_at": "2026-10-15T20:04:31Z", + "updated_at": "2026-10-15T20:04:31Z", "description": "UniUni Wallet Account", + "reference": null, "billing_type": "easypost", "readable": "UniUni Wallet", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '600' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7ff0b07a6ad131cfe2ba149a005c455a + x-frame-options: + - SAMEORIGIN + x-node: + - web117azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb1azw f29267e751 + - extlb2azw ff4cfe6eb5 + x-runtime: + - '0.072914' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/carrier_accounts/ca_057c0400d9e6445eaca363a46156e047 + response: + body: + string: '{}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - aebfacaf6ad131cfe2ba149b0058a9ee + x-frame-options: + - SAMEORIGIN + x-node: + - web114azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb1azw f29267e751 + - extlb3azw ff4cfe6eb5 + x-runtime: + - '0.082458' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_UpsAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_UpsAccount.yaml new file mode 100644 index 00000000..070a99f3 --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_UpsAccount.yaml @@ -0,0 +1,74 @@ +interactions: +- request: + body: '{"carrier_account_oauth_registrations": {"type": "UpsAccount"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '63' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register_oauth + response: + body: + string: '{"error": {"code": "UNPROCESSABLE_ENTITY", "message": "The request + was understood, but cannot be processed.", "errors": [{"field": "account_number", + "message": "The provided Carrier Account''s Account Number is required but + missing."}]}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '227' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - cb7ede836ad131d1e2ba14b9005e07d0 + x-frame-options: + - SAMEORIGIN + x-node: + - web104azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb2azw f29267e751 + - extlb1azw ff4cfe6eb5 + x-runtime: + - '0.025475' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 422 + message: Unprocessable Entity +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_UpsDapAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_UpsDapAccount.yaml new file mode 100644 index 00000000..05a3da8e --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_UpsDapAccount.yaml @@ -0,0 +1,73 @@ +interactions: +- request: + body: '{"carrier_account": {"type": "UpsDapAccount", "registration_data": {}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '71' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/open + response: + body: + string: '{"error": {"code": "PARAMETER.REQUIRED", "message": "Missing required + parameter.", "errors": [{"field": "postal_code", "message": "is required but + missing"}]}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '150' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 97548db66ad131cfe2ba1499005e033b + x-frame-options: + - SAMEORIGIN + x-node: + - web127azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3azw f29267e751 + - extlb1azw ff4cfe6eb5 + x-runtime: + - '0.058331' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 422 + message: Unprocessable Entity +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_UpsMailInnovationsAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_UpsMailInnovationsAccount.yaml new file mode 100644 index 00000000..52af48a2 --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_UpsMailInnovationsAccount.yaml @@ -0,0 +1,76 @@ +interactions: +- request: + body: '{"carrier_account_oauth_registrations": {"type": "UpsMailInnovationsAccount"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '78' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register_oauth + response: + body: + string: '{"error": {"code": "UNPROCESSABLE_ENTITY", "message": "The request + was understood, but cannot be processed.", "errors": [{"field": "account_number", + "message": "The provided Carrier Account''s Account Number is required but + missing."}]}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '227' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7ff0b0746ad131d1e2ba14ba005c49f9 + x-frame-options: + - SAMEORIGIN + x-node: + - web101azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb2azw f29267e751 + - extlb2azw ff4cfe6eb5 + x-runtime: + - '0.025996' + x-version-label: + - easypost-202610151955-b13716d895-main + x-xss-protection: + - 1; mode=block + status: + code: 422 + message: Unprocessable Entity +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_UpsSurepostAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_UpsSurepostAccount.yaml new file mode 100644 index 00000000..cbbb67d1 --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_UpsSurepostAccount.yaml @@ -0,0 +1,74 @@ +interactions: +- request: + body: '{"carrier_account_oauth_registrations": {"type": "UpsSurepostAccount"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '71' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register_oauth + response: + body: + string: '{"error": {"code": "UNPROCESSABLE_ENTITY", "message": "The request + was understood, but cannot be processed.", "errors": [{"field": "account_number", + "message": "The provided Carrier Account''s Account Number is required but + missing."}]}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '227' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - add87ec86ad131d1e2ba14bb0058aed1 + x-frame-options: + - SAMEORIGIN + x-node: + - web112azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb2azw f29267e751 + - extlb3azw ff4cfe6eb5 + x-runtime: + - '0.023379' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 422 + message: Unprocessable Entity +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_UspsShipAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_UspsShipAccount.yaml new file mode 100644 index 00000000..91209a5b --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_UspsShipAccount.yaml @@ -0,0 +1,142 @@ +interactions: +- request: + body: '{"carrier_account_oauth_registrations": {"type": "UspsShipAccount"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '68' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/register_oauth + response: + body: + string: '{"id": "ca_fa253fbe72144d0dbe6817fc99d0c136", "object": "CarrierAccount", + "type": "UspsShipAccount", "clone": false, "created_at": "2026-10-15T20:04:33Z", + "updated_at": "2026-10-15T20:04:33Z", "description": null, "reference": null, + "billing_type": "carrier", "readable": "Usps Ship", "logo": null, "fields": + [], "credentials": {}, "test_credentials": {}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2561' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 97548db46ad131d1e2ba14bc005e092a + x-frame-options: + - SAMEORIGIN + x-node: + - web115azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb2azw f29267e751 + - extlb1azw ff4cfe6eb5 + x-runtime: + - '0.105050' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/carrier_accounts/ca_fa253fbe72144d0dbe6817fc99d0c136 + response: + body: + string: '{}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - add87ec36ad131d1e2ba14d80058afe8 + x-frame-options: + - SAMEORIGIN + x-node: + - web127azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb2azw f29267e751 + - extlb3azw ff4cfe6eb5 + x-runtime: + - '0.086817' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_url_routing_VehoWalletAccount.yaml b/tests/cassettes/test_carrier_account_create_url_routing_VehoWalletAccount.yaml new file mode 100644 index 00000000..91a029da --- /dev/null +++ b/tests/cassettes/test_carrier_account_create_url_routing_VehoWalletAccount.yaml @@ -0,0 +1,143 @@ +interactions: +- request: + body: '{"carrier_account": {"type": "VehoWalletAccount", "registration_data": + {}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '75' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/carrier_accounts/open + response: + body: + string: '{"id": "ca_25a8211bea34436cb296a2a769497f0b", "object": "CarrierAccount", + "type": "VehoWalletAccount", "clone": false, "created_at": "2026-10-15T20:04:32Z", + "updated_at": "2026-10-15T20:04:32Z", "description": "Veho Account", "reference": + null, "billing_type": "easypost", "readable": "Veho", "logo": null, "fields": + [], "credentials": {}, "test_credentials": {}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '583' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - cb7ede836ad131d0e2ba149c005e0501 + x-frame-options: + - SAMEORIGIN + x-node: + - web124azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3azw f29267e751 + - extlb1azw ff4cfe6eb5 + x-runtime: + - '0.091164' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/carrier_accounts/ca_25a8211bea34436cb296a2a769497f0b + response: + body: + string: '{}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2' + content-type: + - application/json; charset=utf-8 + easypost-api-version: + - '2015-01-01' + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + vary: + - EasyPost-Api-Version + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7ff0b0756ad131d0e2ba149d005c472c + x-frame-options: + - SAMEORIGIN + x-node: + - web113azw + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb2azw f29267e751 + - extlb2azw ff4cfe6eb5 + x-runtime: + - '0.071861' + x-version-label: + - easypost-202610151849-c381b11f6c-main + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_carrier_account_create_with_custom_workflow.yaml b/tests/cassettes/test_carrier_account_create_with_custom_workflow.yaml index 4a3567ac..1ce9def1 100644 --- a/tests/cassettes/test_carrier_account_create_with_custom_workflow.yaml +++ b/tests/cassettes/test_carrier_account_create_with_custom_workflow.yaml @@ -1,6 +1,6 @@ interactions: - request: - body: '{"carrier_account": {"type": "UpsAccount", "registration_data": {}}}' + body: '{"carrier_account": {"type": "FedexAccount", "registration_data": {}}}' headers: Accept: - '*/*' @@ -9,7 +9,7 @@ interactions: Connection: - keep-alive Content-Length: - - '68' + - '70' Content-Type: - application/json authorization: @@ -21,22 +21,29 @@ interactions: response: body: string: '{"error": {"code": "UNPROCESSABLE_ENTITY", "message": "The request - was understood, but cannot be processed.", "errors": [{"field": "account_number", - "message": "must be present and a string"}, {"field": "city", "message": "must - be present and a string"}, {"field": "company", "message": "must be present - and a string"}, {"field": "country", "message": "must be present and a string"}, - {"field": "email", "message": "must be present and a string"}, {"field": "name", - "message": "must be present and a string"}, {"field": "phone", "message": - "must be present and a string"}, {"field": "postal_code", "message": "must - be present and a string"}, {"field": "state", "message": "must be present - and a string"}, {"field": "street1", "message": "must be present and a string"}, - {"field": "title", "message": "must be present and a string"}, {"field": "website", - "message": "must be present and a string"}]}}' + was understood, but cannot be processed.", "errors": [{"field": "shipping_streets", + "message": "must be present and a string"}, {"field": "shipping_city", "message": + "must be present and a string"}, {"field": "shipping_state", "message": "must + be present and a string"}, {"field": "shipping_postal_code", "message": "must + be present and a string"}, {"field": "shipping_country_code", "message": "must + be present and a string"}, {"field": "corporate_first_name", "message": "must + be present and a string"}, {"field": "corporate_last_name", "message": "must + be present and a string"}, {"field": "corporate_job_title", "message": "must + be present and a string"}, {"field": "corporate_company_name", "message": + "must be present and a string"}, {"field": "corporate_phone_number", "message": + "must be present and a string"}, {"field": "corporate_email_address", "message": + "must be present and a string"}, {"field": "corporate_streets", "message": + "must be present and a string"}, {"field": "corporate_city", "message": "must + be present and a string"}, {"field": "corporate_state", "message": "must be + present and a string"}, {"field": "corporate_postal_code", "message": "must + be present and a string"}, {"field": "corporate_country_code", "message": + "must be present and a string"}, {"field": "account_number", "message": "must + be present and a string"}]}}' headers: cache-control: - private, no-cache, no-store content-length: - - '846' + - '1347' content-type: - application/json; charset=utf-8 expires: @@ -56,21 +63,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - cdb1f665645ead1ce2aabe8300016878 + - 8e8eb62c67c9fbebe2b97a8e001871b4 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.033932' + - '0.019066' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_carrier_account_delete.yaml b/tests/cassettes/test_carrier_account_delete.yaml index 652443f0..0f621e5d 100644 --- a/tests/cassettes/test_carrier_account_delete.yaml +++ b/tests/cassettes/test_carrier_account_delete.yaml @@ -23,21 +23,18 @@ interactions: uri: https://api.easypost.com/v2/carrier_accounts response: body: - string: '{"id": "ca_f7f311da4f2a4897ad9382aa86739831", "object": "CarrierAccount", - "type": "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:18:19Z", - "updated_at": "2023-05-12T21:18:19Z", "description": "DHL eCommerce Solutions - Account", "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce - Solutions", "logo": null, "fields": [], "credentials": {}, "test_credentials": - {}}' + string: '{"id": "ca_2db7b102d7384c6580f7c1a33cc6ab09", "object": "CarrierAccount", + "type": "DhlEcsAccount", "clone": false, "created_at": "2025-03-06T19:47:54Z", + "updated_at": "2025-03-06T19:47:54Z", "description": "DHL eCommerce Account", + "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '1469' + - '1369' content-type: - application/json; charset=utf-8 - etag: - - W/"eb766921687771864ea35189bbab2b46" expires: - '0' pragma: @@ -55,20 +52,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b53645ead1be2aabe81000e9bcb + - 8e8eb62767c9fbeae2b97a8c0018710a x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.107265' + - '0.179585' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -90,7 +87,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/carrier_accounts/ca_f7f311da4f2a4897ad9382aa86739831 + uri: https://api.easypost.com/v2/carrier_accounts/ca_2db7b102d7384c6580f7c1a33cc6ab09 response: body: string: '{}' @@ -101,8 +98,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -120,20 +115,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b53645ead1be2aabe81000e9bf0 + - 8e8eb62767c9fbeae2b97a8c00187148 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.192042' + - '0.052865' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_carrier_account_retrieve.yaml b/tests/cassettes/test_carrier_account_retrieve.yaml index e8159a04..576a2b4d 100644 --- a/tests/cassettes/test_carrier_account_retrieve.yaml +++ b/tests/cassettes/test_carrier_account_retrieve.yaml @@ -23,21 +23,18 @@ interactions: uri: https://api.easypost.com/v2/carrier_accounts response: body: - string: '{"id": "ca_9b328bc471a54c00ae8995e7edde66df", "object": "CarrierAccount", - "type": "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:18:18Z", - "updated_at": "2023-05-12T21:18:18Z", "description": "DHL eCommerce Solutions - Account", "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce - Solutions", "logo": null, "fields": [], "credentials": {}, "test_credentials": - {}}' + string: '{"id": "ca_0d2084c8bd8a483eb7cf30adf83ca4ed", "object": "CarrierAccount", + "type": "DhlEcsAccount", "clone": false, "created_at": "2025-03-06T19:47:53Z", + "updated_at": "2025-03-06T19:47:53Z", "description": "DHL eCommerce Account", + "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '1469' + - '1369' content-type: - application/json; charset=utf-8 - etag: - - W/"33d79e2fa6cb5369bb7b6699277c3dd7" expires: - '0' pragma: @@ -50,25 +47,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00f645ead1ae2aabe7e000daa21 + - 8e8eb62967c9fbe9e2b9777b00186fcf x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.112895' + - '0.060555' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -88,24 +87,21 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/carrier_accounts/ca_9b328bc471a54c00ae8995e7edde66df + uri: https://api.easypost.com/v2/carrier_accounts/ca_0d2084c8bd8a483eb7cf30adf83ca4ed response: body: - string: '{"id": "ca_9b328bc471a54c00ae8995e7edde66df", "object": "CarrierAccount", - "type": "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:18:18Z", - "updated_at": "2023-05-12T21:18:18Z", "description": "DHL eCommerce Solutions - Account", "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce - Solutions", "logo": null, "fields": [], "credentials": {}, "test_credentials": - {}}' + string: '{"id": "ca_0d2084c8bd8a483eb7cf30adf83ca4ed", "object": "CarrierAccount", + "type": "DhlEcsAccount", "clone": false, "created_at": "2025-03-06T19:47:53Z", + "updated_at": "2025-03-06T19:47:53Z", "description": "DHL eCommerce Account", + "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '1469' + - '1369' content-type: - application/json; charset=utf-8 - etag: - - W/"33d79e2fa6cb5369bb7b6699277c3dd7" expires: - '0' pragma: @@ -123,20 +119,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00f645ead1ae2aabe7e000daa57 + - 8e8eb62967c9fbe9e2b9777b00186fe9 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.026662' + - '0.029009' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -158,7 +154,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/carrier_accounts/ca_9b328bc471a54c00ae8995e7edde66df + uri: https://api.easypost.com/v2/carrier_accounts/ca_0d2084c8bd8a483eb7cf30adf83ca4ed response: body: string: '{}' @@ -169,8 +165,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -188,20 +182,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 4eb6f00f645ead1ae2aabe7e000daa60 + - 8e8eb62967c9fbe9e2b9777b00187004 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.116409' + - '0.053419' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_carrier_account_type.yaml b/tests/cassettes/test_carrier_account_type.yaml index 61872aa0..2ca1f976 100644 --- a/tests/cassettes/test_carrier_account_type.yaml +++ b/tests/cassettes/test_carrier_account_type.yaml @@ -16,100 +16,112 @@ interactions: uri: https://api.easypost.com/v2/carrier_types response: body: - string: '[{"object": "CarrierType", "type": "AmazonMwsAccount", "readable": - "Amazon MWS", "logo": null, "fields": []}, {"object": "CarrierType", "type": - "ApcAccount", "readable": "APC", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "AsendiaUsaAccount", "readable": "Asendia USA", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "AustraliaPostAccount", "readable": - "Australia Post", "logo": null, "fields": []}, {"object": "CarrierType", "type": - "AxlehireV3Account", "readable": "AxlehireV3", "logo": null, "fields": []}, - {"object": "CarrierType", "type": "BetterTrucksAccount", "readable": "Better - Trucks", "logo": null, "fields": []}, {"object": "CarrierType", "type": "CanadaPostAccount", - "readable": "Canada Post", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "CanparAccount", "readable": "Canpar", "logo": null, "fields": []}, - {"object": "CarrierType", "type": "ColumbusLastMileAccount", "readable": "CDL - Last Mile Solutions", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "CourierExpressAccount", "readable": "Courier Express", "logo": null, - "fields": []}, {"object": "CarrierType", "type": "CouriersPleaseAccount", + string: '[{"object": "CarrierType", "type": "UpsAccount", "readable": "UPS", + "logo": null, "fields": []}, {"object": "CarrierType", "type": "UpsMailInnovationsAccount", + "readable": "UPS Mail Innovations", "logo": null, "fields": []}, {"object": + "CarrierType", "type": "AccurateAccount", "readable": "Accurate", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "AmazonShippingAccount", + "readable": "Amazon Shipping", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "ApcAccount", "readable": "APC", "logo": null, "fields": []}, {"object": + "CarrierType", "type": "AsendiaUsaAccount", "readable": "Asendia USA", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "AustraliaPostAccount", + "readable": "Australia Post", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "BetterTrucksAccount", "readable": "Better Trucks", "logo": null, + "fields": []}, {"object": "CarrierType", "type": "BluestreakAccount", "readable": + "Bluestreak", "logo": null, "fields": []}, {"object": "CarrierType", "type": + "CanadaPostAccount", "readable": "Canada Post", "logo": null, "fields": []}, + {"object": "CarrierType", "type": "CanparAccount", "readable": "Canpar", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "ColumbusLastMileAccount", + "readable": "CDL Last Mile Solutions", "logo": null, "fields": []}, {"object": + "CarrierType", "type": "CourierExpressAccount", "readable": "Courier Express", + "logo": null, "fields": []}, {"object": "CarrierType", "type": "CouriersPleaseAccount", "readable": "CouriersPlease", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "DaiPostAccount", "readable": "Dai Post", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "DeliverItAccount", "readable": "Deliver-It", - "logo": null, "fields": []}, {"object": "CarrierType", "type": "DeutschePostUKAccount", - "readable": "Deutsche Post UK", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "DhlEcommerceAsiaAccount", "readable": "DHL Ecommerce Asia", "logo": - null, "fields": []}, {"object": "CarrierType", "type": "DhlEcsAccount", "readable": - "DHL eCommerce Solutions", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "DhlExpressAccount", "readable": "DHL Express", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "DhlPaketAccount", "readable": "DHL - Paket", "logo": null, "fields": []}, {"object": "CarrierType", "type": "DhlParcelAccount", + "type": "CSLogisticsAccount", "readable": "CSLogistics", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "DaiPostAccount", "readable": "Dai + Post", "logo": null, "fields": []}, {"object": "CarrierType", "type": "DeliverItAccount", + "readable": "Deliver-It", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "DeutschePostUKAccount", "readable": "Deutsche Post UK", "logo": null, + "fields": []}, {"object": "CarrierType", "type": "DhlEcsAccount", "readable": + "DHL eCommerce", "logo": null, "fields": []}, {"object": "CarrierType", "type": + "DhlExpressAccount", "readable": "DHL Express", "logo": null, "fields": []}, + {"object": "CarrierType", "type": "DhlPaketAccount", "readable": "DHL Paket", + "logo": null, "fields": []}, {"object": "CarrierType", "type": "DhlParcelAccount", "readable": "DHL Parcel", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "DpdAccount", "readable": "DPD", "logo": null, "fields": []}, {"object": - "CarrierType", "type": "DpdUkAccount", "readable": "DPD UK", "logo": null, - "fields": []}, {"object": "CarrierType", "type": "DpdNlAccount", "readable": - "DPD NL", "logo": null, "fields": []}, {"object": "CarrierType", "type": "EstafetaAccount", + "type": "DoorDashAccount", "readable": "DoorDash", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "DouglasAccount", "readable": "Douglas", + "logo": null, "fields": []}, {"object": "CarrierType", "type": "DpdAccount", + "readable": "DPD", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "DpdUkAccount", "readable": "DPD UK", "logo": null, "fields": []}, + {"object": "CarrierType", "type": "DpdNlAccount", "readable": "DPD NL", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "EstafetaAccount", "readable": "Estafeta", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "FastwayAccount", "readable": "Fastway", "logo": null, "fields": []}, - {"object": "CarrierType", "type": "FedexAccount", "readable": "FedEx", "logo": - null, "fields": []}, {"object": "CarrierType", "type": "FedexCrossBorderAccount", - "readable": "FedEx Cross Border", "logo": null, "fields": []}, {"object": - "CarrierType", "type": "FedexMailviewAccount", "readable": "FedEx MailView", - "logo": null, "fields": []}, {"object": "CarrierType", "type": "FedexSmartpostAccount", - "readable": "FedEx SmartPost", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "FirstMileConciseAccount", "readable": "First Mile", "logo": null, - "fields": []}, {"object": "CarrierType", "type": "GsoAccount", "readable": - "GSO", "logo": null, "fields": []}, {"object": "CarrierType", "type": "HailifyAccount", - "readable": "Hailify", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "HermesAccount", "readable": "Evri", "logo": null, "fields": []}, - {"object": "CarrierType", "type": "InterlinkExpressAccount", "readable": "Interlink - Express", "logo": null, "fields": []}, {"object": "CarrierType", "type": "LasershipV2Account", - "readable": "LaserShipV2", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "LoomisExpressAccount", "readable": "Loomis Express", "logo": null, - "fields": []}, {"object": "CarrierType", "type": "LsoAccount", "readable": - "LSO", "logo": null, "fields": []}, {"object": "CarrierType", "type": "NewgisticsAccount", - "readable": "Newgistics", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "OmniParcelAccount", "readable": "OmniParcel", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "OntracAccount", "readable": "OnTrac", + "type": "FedexAccount", "readable": "FedEx", "logo": null, "fields": []}, + {"object": "CarrierType", "type": "FedexCrossBorderAccount", "readable": "FedEx + Cross Border", "logo": null, "fields": []}, {"object": "CarrierType", "type": + "FedexMailviewAccount", "readable": "FedEx MailView", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "FedexSmartpostAccount", "readable": + "FedEx SmartPost", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "FirstChoiceAccount", "readable": "First Choice", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "FirstMileConciseAccount", "readable": + "First Mile", "logo": null, "fields": []}, {"object": "CarrierType", "type": + "FlexportAccount", "readable": "Flexport", "logo": null, "fields": []}, {"object": + "CarrierType", "type": "GioAccount", "readable": "Gio", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "GsoAccount", "readable": "GSO", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "HailifyAccount", "readable": + "Hailify", "logo": null, "fields": []}, {"object": "CarrierType", "type": + "HenryAccount", "readable": "Henry", "logo": null, "fields": []}, {"object": + "CarrierType", "type": "HermesAccount", "readable": "Evri", "logo": null, + "fields": []}, {"object": "CarrierType", "type": "InterlinkExpressAccount", + "readable": "Interlink Express", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "JetAccount", "readable": "Jet", "logo": null, "fields": []}, {"object": + "CarrierType", "type": "JitsuAccount", "readable": "Jitsu", "logo": null, + "fields": []}, {"object": "CarrierType", "type": "LasershipV2Account", "readable": + "LaserShipV2", "logo": null, "fields": []}, {"object": "CarrierType", "type": + "LoomisExpressAccount", "readable": "Loomis Express", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "LsoAccount", "readable": "LSO", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "MaerskAccount", "readable": + "Maersk", "logo": null, "fields": []}, {"object": "CarrierType", "type": "OmniParcelAccount", + "readable": "OmniParcel", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "OntracAccount", "readable": "OnTrac", "logo": null, "fields": []}, + {"object": "CarrierType", "type": "OntracV3Account", "readable": "OnTrac V3", "logo": null, "fields": []}, {"object": "CarrierType", "type": "OptimaAccount", "readable": "Optima", "logo": null, "fields": []}, {"object": "CarrierType", "type": "OsmWorldwideAccount", "readable": "OSM Worldwide", "logo": null, "fields": []}, {"object": "CarrierType", "type": "ParcelForceAccount", "readable": "Parcel Force", "logo": null, "fields": []}, {"object": "CarrierType", "type": - "ParcllAccount", "readable": "Parcll", "logo": null, "fields": []}, {"object": - "CarrierType", "type": "PassportGlobalAccount", "readable": "Passport Global", - "logo": null, "fields": []}, {"object": "CarrierType", "type": "PurolatorAccount", + "ParcllAccount", "readable": "Cirro E-Commerce", "logo": null, "fields": []}, + {"object": "CarrierType", "type": "PassportGlobalAccount", "readable": "Passport + Global", "logo": null, "fields": []}, {"object": "CarrierType", "type": "PurolatorAccount", "readable": "Purolator", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "RoyalMailAccount", "readable": "Royal Mail", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "RRDonnelleyAccount", "readable": "ePost - Global", "logo": null, "fields": []}, {"object": "CarrierType", "type": "SendleAccount", - "readable": "Sendle", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "SfExpressAccount", "readable": "SF Express", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "SmartKargoAccount", "readable": "SmartKargo", - "logo": null, "fields": []}, {"object": "CarrierType", "type": "SonicAccount", - "readable": "Sonic", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "QuickAccount", "readable": "Quick", "logo": null, "fields": []}, + {"object": "CarrierType", "type": "RoverAccount", "readable": "Rover", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "RoyalMailV3Account", + "readable": "Royal Mail V3", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "RRDonnelleyAccount", "readable": "ePost Global", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "SendleAccount", "readable": "Sendle", + "logo": null, "fields": []}, {"object": "CarrierType", "type": "SfExpressAccount", + "readable": "SF Express", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "SmartKargoAccount", "readable": "SmartKargo", "logo": null, "fields": + []}, {"object": "CarrierType", "type": "SonicAccount", "readable": "Sonic", + "logo": null, "fields": []}, {"object": "CarrierType", "type": "SpeedXAccount", + "readable": "SpeedX", "logo": null, "fields": []}, {"object": "CarrierType", "type": "SpeedeeAccount", "readable": "Spee-Dee", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "SwyftAccount", "readable": "Swyft", - "logo": null, "fields": []}, {"object": "CarrierType", "type": "TforceConciseAccount", - "readable": "TForce", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "TollAccount", "readable": "Toll", "logo": null, "fields": []}, {"object": - "CarrierType", "type": "UdsAccount", "readable": "UDS", "logo": null, "fields": - []}, {"object": "CarrierType", "type": "UpsAccount", "readable": "UPS", "logo": - null, "fields": []}, {"object": "CarrierType", "type": "UpsIparcelAccount", - "readable": "UPS i-Parcel", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "UpsMailInnovationsAccount", "readable": "UPS Mail Innovations", "logo": - null, "fields": []}, {"object": "CarrierType", "type": "UspsAccount", "readable": - "USPS", "logo": null, "fields": []}, {"object": "CarrierType", "type": "VehoAccount", - "readable": "Veho", "logo": null, "fields": []}, {"object": "CarrierType", - "type": "XDeliveryAccount", "readable": "Maergo", "logo": null, "fields": - []}]' + []}, {"object": "CarrierType", "type": "SwayAccount", "readable": "Sway", + "logo": null, "fields": []}, {"object": "CarrierType", "type": "SwyftAccount", + "readable": "Swyft", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "TccAccount", "readable": "Tcc", "logo": null, "fields": []}, {"object": + "CarrierType", "type": "TforceConciseAccount", "readable": "TForce", "logo": + null, "fields": []}, {"object": "CarrierType", "type": "UdsAccount", "readable": + "UDS", "logo": null, "fields": []}, {"object": "CarrierType", "type": "UspsAccount", + "readable": "USPS", "logo": null, "fields": []}, {"object": "CarrierType", + "type": "VehoAccount", "readable": "Veho", "logo": null, "fields": []}]' headers: cache-control: - private, no-cache, no-store content-length: - - '37555' + - '42374' content-type: - application/json; charset=utf-8 - etag: - - W/"66c0eaa20ef9e6d125b3e41146cc1cce" expires: - '0' pragma: @@ -127,21 +139,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - cdb1f666645ead1be2aabe8200016846 + - 8e8eb62967c9fbebe2b97a8d00187174 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.023892' + - '0.058157' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_carrier_account_update.yaml b/tests/cassettes/test_carrier_account_update.yaml index 9ff62938..5aab0100 100644 --- a/tests/cassettes/test_carrier_account_update.yaml +++ b/tests/cassettes/test_carrier_account_update.yaml @@ -23,21 +23,18 @@ interactions: uri: https://api.easypost.com/v2/carrier_accounts response: body: - string: '{"id": "ca_a575738b0d994778a960c5c19e748baa", "object": "CarrierAccount", - "type": "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:21:53Z", - "updated_at": "2023-05-12T21:21:53Z", "description": "DHL eCommerce Solutions - Account", "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce - Solutions", "logo": null, "fields": [], "credentials": {}, "test_credentials": - {}}' + string: '{"id": "ca_051a2637279743549672467af0badec7", "object": "CarrierAccount", + "type": "DhlEcsAccount", "clone": false, "created_at": "2025-03-06T19:47:54Z", + "updated_at": "2025-03-06T19:47:54Z", "description": "DHL eCommerce Account", + "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '1469' + - '1369' content-type: - application/json; charset=utf-8 - etag: - - W/"ae937268738bf972b34e687a182d5a17" expires: - '0' pragma: @@ -55,26 +52,90 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870a645eadf1e2aac27e000e79d2 + - 8e8eb62967c9fbeae2b97a8b00187055 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.111611' + - '0.060176' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: code: 201 message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/carrier_accounts/ca_051a2637279743549672467af0badec7 + response: + body: + string: '{"id": "ca_051a2637279743549672467af0badec7", "object": "CarrierAccount", + "type": "DhlEcsAccount", "clone": false, "created_at": "2025-03-06T19:47:54Z", + "updated_at": "2025-03-06T19:47:54Z", "description": "DHL eCommerce Account", + "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce", + "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1369' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbeae2b97a8b00187072 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb39nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.029269' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK - request: body: '{"carrier_account": {"description": "My custom description"}}' headers: @@ -93,23 +154,21 @@ interactions: user-agent: - method: PATCH - uri: https://api.easypost.com/v2/carrier_accounts/ca_a575738b0d994778a960c5c19e748baa + uri: https://api.easypost.com/v2/carrier_accounts/ca_051a2637279743549672467af0badec7 response: body: - string: '{"id": "ca_a575738b0d994778a960c5c19e748baa", "object": "CarrierAccount", - "type": "DhlEcsAccount", "clone": false, "created_at": "2023-05-12T21:21:53Z", - "updated_at": "2023-05-12T21:21:54Z", "description": "My custom description", - "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce Solutions", + string: '{"id": "ca_051a2637279743549672467af0badec7", "object": "CarrierAccount", + "type": "DhlEcsAccount", "clone": false, "created_at": "2025-03-06T19:47:54Z", + "updated_at": "2025-03-06T19:47:54Z", "description": "My custom description", + "reference": null, "billing_type": "carrier", "readable": "DHL eCommerce", "logo": null, "fields": [], "credentials": {}, "test_credentials": {}}' headers: cache-control: - private, no-cache, no-store content-length: - - '1459' + - '1369' content-type: - application/json; charset=utf-8 - etag: - - W/"f872eb829c218950953d19ed5a7de737" expires: - '0' pragma: @@ -127,21 +186,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870a645eadf1e2aac27e000e79f4 + - 8e8eb62967c9fbeae2b97a8b0018708a x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.127137' + - '0.088061' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -163,7 +221,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/carrier_accounts/ca_a575738b0d994778a960c5c19e748baa + uri: https://api.easypost.com/v2/carrier_accounts/ca_051a2637279743549672467af0badec7 response: body: string: '{}' @@ -174,8 +232,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -193,21 +249,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - fe8d870a645eadf2e2aac27e000e7a0c + - 8e8eb62967c9fbeae2b97a8b001870c2 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.113851' + - '0.052585' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_claim_all.yaml b/tests/cassettes/test_claim_all.yaml new file mode 100644 index 00000000..c4acdce6 --- /dev/null +++ b/tests/cassettes/test_claim_all.yaml @@ -0,0 +1,103 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/claims?page_size=5 + response: + body: + string: '{"claims": [{"approved_amount": null, "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/cde3cb05bd1e4e6f8de416f301f44354.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/3617f2bdfed24000b62349577cc77b85.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/6fc76e0969d94780811a7baf5c1cd4ca.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:48:00Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:48:00Z"}], + "id": "clm_09ce975320fe4661af0f80a68022ee76", "insurance_amount": "100.00", + "insurance_id": "ins_7bcb457363834ebd88ba419138138fbc", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:48:00Z", "tracking_code": "9400100208303109500676", "type": + "damage", "updated_at": "2025-03-06T19:48:00Z"}, {"approved_amount": null, + "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/8fb0b33e39004bfea8bffabf242d48c8.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/6acf5385ee494fc2bfcac704b9dcfddf.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/5bf9e0415088448a937d39348a485593.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:47:58Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:47:58Z"}], + "id": "clm_09ce5f03fd6b4310b9c5b7f306407214", "insurance_amount": "100.00", + "insurance_id": "ins_029e06b218ab48e0979236191bb04df0", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:47:58Z", "tracking_code": "9400100208303109500669", "type": + "damage", "updated_at": "2025-03-06T19:47:58Z"}, {"approved_amount": null, + "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250221/b323c9d15a5f45669b16994df4233f82.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250221/71287f6c2f984eb58e336ff7266d4d7a.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250221/662abb57720b4740a6003e285451c988.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-02-21T18:30:53Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-02-21T18:30:53Z"}], + "id": "clm_09cc787188c1462aaa437fcba47ee03d", "insurance_amount": "100.00", + "insurance_id": "ins_730ae2cc418147938bfcac3e49ed1665", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_bfb151c83dbf4a8c97a494074041c11f", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-02-21T18:30:53Z", "tracking_code": "9400100208271116404754", "type": + "theft", "updated_at": "2025-02-21T18:30:53Z"}], "has_more": false}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '3374' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbf1e2b97aad0018787c + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb43nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.045934' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_claim_cancel.yaml b/tests/cassettes/test_claim_cancel.yaml new file mode 100644 index 00000000..bd44043d --- /dev/null +++ b/tests/cassettes/test_claim_cancel.yaml @@ -0,0 +1,642 @@ +interactions: +- request: + body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}, "customs_info": {"eel_pfc": "NOEEI 30.37(a)", "customs_certify": true, + "customs_signer": "Steve Brule", "contents_type": "merchandise", "contents_explanation": + "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": + [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, + "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": + "PNG", "invoice_number": "123"}, "reference": "123"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '954' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments + response: + body: + string: '{"id": "shp_0ea044af2a4a491e953233cd7867bb6a", "created_at": "2025-03-06T19:48:01Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:01Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_d9951ec92f88467b858907457b287de2", + "object": "CustomsInfo", "created_at": "2025-03-06T19:48:01Z", "updated_at": + "2025-03-06T19:48:01Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_ce7a9058a4de43d2a7cb4e181095b619", "object": "CustomsItem", + "created_at": "2025-03-06T19:48:01Z", "updated_at": "2025-03-06T19:48:01Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_f9b7bc5a09c0410b8b5e3d5a4e2d54e7", + "object": "Parcel", "created_at": "2025-03-06T19:48:01Z", "updated_at": "2025-03-06T19:48:01Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_3c9b9d22912b45768152e44b830fc949", + "object": "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e3014a913dd146f2b8698f7398c7837b", + "object": "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a144a42f34e24777bffd707cb614c68c", + "object": "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_e9c58fe5fac311ef8e57ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:01+00:00", "updated_at": + "2025-03-06T19:48:01+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e9c58fe5fac311ef8e57ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "forms": [], "fees": [], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '5160' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/shipments/shp_0ea044af2a4a491e953233cd7867bb6a + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fbf1e2b97aaf001878d9 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb57nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.269529' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{"rate": {"id": "rate_a144a42f34e24777bffd707cb614c68c"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '57' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/shp_0ea044af2a4a491e953233cd7867bb6a/buy + response: + body: + string: '{"id": "shp_0ea044af2a4a491e953233cd7867bb6a", "created_at": "2025-03-06T19:48:01Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109500683", "updated_at": "2025-03-06T19:48:03Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_d9951ec92f88467b858907457b287de2", "object": "CustomsInfo", "created_at": + "2025-03-06T19:48:01Z", "updated_at": "2025-03-06T19:48:01Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_ce7a9058a4de43d2a7cb4e181095b619", + "object": "CustomsItem", "created_at": "2025-03-06T19:48:01Z", "updated_at": + "2025-03-06T19:48:01Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_f9b7bc5a09c0410b8b5e3d5a4e2d54e7", + "object": "Parcel", "created_at": "2025-03-06T19:48:01Z", "updated_at": "2025-03-06T19:48:01Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_6a5afe4a07c14caca7afbda6e2c32067", + "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:03Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:02Z", + "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e82472ec19172d428b992f713a7a7cf3df.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_3c9b9d22912b45768152e44b830fc949", "object": + "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e3014a913dd146f2b8698f7398c7837b", + "object": "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a144a42f34e24777bffd707cb614c68c", + "object": "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_a144a42f34e24777bffd707cb614c68c", "object": + "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_9ac363e1c15c4fc999d121ce98d362e7", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500683", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:48:03Z", + "updated_at": "2025-03-06T19:48:03Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier": "USPS", + "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": + "https://track.easypost.com/djE6dHJrXzlhYzM2M2UxYzE1YzRmYzk5OWQxMjFjZTk4ZDM2MmU3"}, + "to_address": {"id": "adr_e9c58fe5fac311ef8e57ac1f6bc53342", "object": "Address", + "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:02+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": + 4, "return_address": {"id": "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e9c58fe5fac311ef8e57ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:02+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": + [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "6.07000", "charged": true, "refunded": false}], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '7285' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fbf2e2b97aaf0018794c + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb43nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.858515' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"amount": "100.00"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '20' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/shp_0ea044af2a4a491e953233cd7867bb6a/insure + response: + body: + string: '{"id": "shp_0ea044af2a4a491e953233cd7867bb6a", "created_at": "2025-03-06T19:48:01Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109500683", "updated_at": "2025-03-06T19:48:03Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_d9951ec92f88467b858907457b287de2", "object": "CustomsInfo", "created_at": + "2025-03-06T19:48:01Z", "updated_at": "2025-03-06T19:48:01Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_ce7a9058a4de43d2a7cb4e181095b619", + "object": "CustomsItem", "created_at": "2025-03-06T19:48:01Z", "updated_at": + "2025-03-06T19:48:01Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": "100.00", "order_id": null, "parcel": {"id": "prcl_f9b7bc5a09c0410b8b5e3d5a4e2d54e7", + "object": "Parcel", "created_at": "2025-03-06T19:48:01Z", "updated_at": "2025-03-06T19:48:01Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_6a5afe4a07c14caca7afbda6e2c32067", + "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:03Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:02Z", + "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e82472ec19172d428b992f713a7a7cf3df.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_3c9b9d22912b45768152e44b830fc949", "object": + "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e3014a913dd146f2b8698f7398c7837b", + "object": "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a144a42f34e24777bffd707cb614c68c", + "object": "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_a144a42f34e24777bffd707cb614c68c", "object": + "Rate", "created_at": "2025-03-06T19:48:02Z", "updated_at": "2025-03-06T19:48:02Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_9ac363e1c15c4fc999d121ce98d362e7", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500683", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:03Z", + "updated_at": "2025-03-06T19:48:03Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:03Z", "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", + "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:03Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:03Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": + [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class + Package Service", "container_type": null, "est_delivery_date_local": null, + "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzlhYzM2M2UxYzE1YzRmYzk5OWQxMjFjZTk4ZDM2MmU3"}, + "to_address": {"id": "adr_e9c58fe5fac311ef8e57ac1f6bc53342", "object": "Address", + "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:02+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": + 4, "return_address": {"id": "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e9c58fe5fac311ef8e57ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:02+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": + [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "6.07000", "charged": true, "refunded": false}, {"object": "Fee", "type": + "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": false}], + "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '8509' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fbf3e2b97aaf00187a31 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb42nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.315359' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"type": "damage", "email_evidence_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "invoice_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "supporting_documentation_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "description": "Test description", "contact_email": "test@example.com", "tracking_code": + "9400100208303109500683", "amount": "100.00"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '618' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/claims + response: + body: + string: '{"approved_amount": null, "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/48c6da378b1c4df88308924c11d86a20.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/363f7506d469479685db3d284e56fbb5.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/d25e02b038eb46308dc9febeeba1963e.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:48:03Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:48:03Z"}], + "id": "clm_09cea7c6461a4182a7e05bed24b83717", "insurance_amount": "100.00", + "insurance_id": "ins_229626a7af2f46c28f15547390291e82", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:48:03Z", "tracking_code": "9400100208303109500683", "type": + "damage", "updated_at": "2025-03-06T19:48:03Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1115' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fbf3e2b97aaf00187a7b + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb39nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.744747' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/claims/clm_09cea7c6461a4182a7e05bed24b83717/cancel + response: + body: + string: '{"approved_amount": null, "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/48c6da378b1c4df88308924c11d86a20.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/363f7506d469479685db3d284e56fbb5.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/d25e02b038eb46308dc9febeeba1963e.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:48:03Z", "description": "Test description", "history": [{"status": + "cancelled", "status_detail": "Claim cancellation was requested.", "timestamp": + "2025-03-06T19:48:04Z"}, {"status": "submitted", "status_detail": "Claim was + created.", "timestamp": "2025-03-06T19:48:03Z"}], "id": "clm_09cea7c6461a4182a7e05bed24b83717", + "insurance_amount": "100.00", "insurance_id": "ins_229626a7af2f46c28f15547390291e82", + "mode": "test", "object": "Claim", "payment_method": "easypost_wallet", "recipient_name": + null, "requested_amount": "100.00", "salvage_value": null, "shipment_id": + "shp_0ea044af2a4a491e953233cd7867bb6a", "status": "cancelled", "status_detail": + "Claim cancellation was requested.", "status_timestamp": "2025-03-06T19:48:04Z", + "tracking_code": "9400100208303109500683", "type": "damage", "updated_at": + "2025-03-06T19:48:04Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1240' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fbf4e2b97aaf00187b2a + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb57nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.039914' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_claim_create.yaml b/tests/cassettes/test_claim_create.yaml new file mode 100644 index 00000000..8ec8b8b3 --- /dev/null +++ b/tests/cassettes/test_claim_create.yaml @@ -0,0 +1,561 @@ +interactions: +- request: + body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}, "customs_info": {"eel_pfc": "NOEEI 30.37(a)", "customs_certify": true, + "customs_signer": "Steve Brule", "contents_type": "merchandise", "contents_explanation": + "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": + [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, + "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": + "PNG", "invoice_number": "123"}, "reference": "123"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '954' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments + response: + body: + string: '{"id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "created_at": "2025-03-06T19:47:56Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:47:56Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_99613496ed144db19134629e78dd8309", + "object": "CustomsInfo", "created_at": "2025-03-06T19:47:56Z", "updated_at": + "2025-03-06T19:47:56Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_916203bc6a7640ee9f0d3f67192ab18a", "object": "CustomsItem", + "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_e6b764b2fac311efa8503cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_59e8de9138da4262994e87a64c8fe537", + "object": "Parcel", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_40f1c040c29848a68b1db88daa3b1964", + "object": "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f52fc9b383bc4d93b7f888a675dc6922", + "object": "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_58bf4ebce74e4639a3a6557a41b53721", + "object": "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_e6b48af8fac311efb2ebac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:47:56+00:00", "updated_at": + "2025-03-06T19:47:56+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_e6b764b2fac311efa8503cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e6b48af8fac311efb2ebac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "forms": [], "fees": [], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '5160' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/shipments/shp_5ee01eb89ffc456fa9cdc82cb03c7f8e + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbece2b97a9300187380 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb53nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.239208' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{"rate": {"id": "rate_58bf4ebce74e4639a3a6557a41b53721"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '57' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/shp_5ee01eb89ffc456fa9cdc82cb03c7f8e/buy + response: + body: + string: '{"id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "created_at": "2025-03-06T19:47:56Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109500669", "updated_at": "2025-03-06T19:47:57Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_99613496ed144db19134629e78dd8309", "object": "CustomsInfo", "created_at": + "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_916203bc6a7640ee9f0d3f67192ab18a", + "object": "CustomsItem", "created_at": "2025-03-06T19:47:56Z", "updated_at": + "2025-03-06T19:47:56Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_e6b764b2fac311efa8503cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_59e8de9138da4262994e87a64c8fe537", + "object": "Parcel", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_310c11cf1f7241aba064585cea05404a", + "created_at": "2025-03-06T19:47:57Z", "updated_at": "2025-03-06T19:47:57Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:47:57Z", + "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e86990a07eebcf4c86948425147d943995.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_40f1c040c29848a68b1db88daa3b1964", "object": + "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f52fc9b383bc4d93b7f888a675dc6922", + "object": "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_58bf4ebce74e4639a3a6557a41b53721", + "object": "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_58bf4ebce74e4639a3a6557a41b53721", "object": + "Rate", "created_at": "2025-03-06T19:47:57Z", "updated_at": "2025-03-06T19:47:57Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_adb09a892549448f92f26c83c20b412c", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500669", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:47:57Z", + "updated_at": "2025-03-06T19:47:57Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier": "USPS", + "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": + "https://track.easypost.com/djE6dHJrX2FkYjA5YTg5MjU0OTQ0OGY5MmYyNmM4M2MyMGI0MTJj"}, + "to_address": {"id": "adr_e6b48af8fac311efb2ebac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:57+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": + 4, "return_address": {"id": "adr_e6b764b2fac311efa8503cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e6b48af8fac311efb2ebac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:57+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": + [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "6.07000", "charged": true, "refunded": false}], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '7285' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbede2b97a93001873c9 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb38nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.807030' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"amount": "100.00"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '20' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/shp_5ee01eb89ffc456fa9cdc82cb03c7f8e/insure + response: + body: + string: '{"id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "created_at": "2025-03-06T19:47:56Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109500669", "updated_at": "2025-03-06T19:47:57Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_99613496ed144db19134629e78dd8309", "object": "CustomsInfo", "created_at": + "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_916203bc6a7640ee9f0d3f67192ab18a", + "object": "CustomsItem", "created_at": "2025-03-06T19:47:56Z", "updated_at": + "2025-03-06T19:47:56Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_e6b764b2fac311efa8503cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": "100.00", "order_id": null, "parcel": {"id": "prcl_59e8de9138da4262994e87a64c8fe537", + "object": "Parcel", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_310c11cf1f7241aba064585cea05404a", + "created_at": "2025-03-06T19:47:57Z", "updated_at": "2025-03-06T19:47:57Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:47:57Z", + "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e86990a07eebcf4c86948425147d943995.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_40f1c040c29848a68b1db88daa3b1964", "object": + "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f52fc9b383bc4d93b7f888a675dc6922", + "object": "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_58bf4ebce74e4639a3a6557a41b53721", + "object": "Rate", "created_at": "2025-03-06T19:47:56Z", "updated_at": "2025-03-06T19:47:56Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_58bf4ebce74e4639a3a6557a41b53721", "object": + "Rate", "created_at": "2025-03-06T19:47:57Z", "updated_at": "2025-03-06T19:47:57Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_adb09a892549448f92f26c83c20b412c", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500669", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:47:57Z", + "updated_at": "2025-03-06T19:47:57Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:47:57Z", "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", + "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:47:57Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:24:57Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": + [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class + Package Service", "container_type": null, "est_delivery_date_local": null, + "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2FkYjA5YTg5MjU0OTQ0OGY5MmYyNmM4M2MyMGI0MTJj"}, + "to_address": {"id": "adr_e6b48af8fac311efb2ebac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:57+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": + 4, "return_address": {"id": "adr_e6b764b2fac311efa8503cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e6b48af8fac311efb2ebac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:57+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": + [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "6.07000", "charged": true, "refunded": false}, {"object": "Fee", "type": + "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": false}], + "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '8509' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbede2b97a930018749e + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb35nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.250325' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"type": "damage", "email_evidence_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "invoice_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "supporting_documentation_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "description": "Test description", "contact_email": "test@example.com", "tracking_code": + "9400100208303109500669", "amount": "100.00"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '618' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/claims + response: + body: + string: '{"approved_amount": null, "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/8fb0b33e39004bfea8bffabf242d48c8.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/6acf5385ee494fc2bfcac704b9dcfddf.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/5bf9e0415088448a937d39348a485593.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:47:58Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:47:58Z"}], + "id": "clm_09ce5f03fd6b4310b9c5b7f306407214", "insurance_amount": "100.00", + "insurance_id": "ins_029e06b218ab48e0979236191bb04df0", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:47:58Z", "tracking_code": "9400100208303109500669", "type": + "damage", "updated_at": "2025-03-06T19:47:58Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1115' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62967c9fbeee2b97a93001874ec + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb42nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.851508' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_claim_get_next_page.yaml b/tests/cassettes/test_claim_get_next_page.yaml new file mode 100644 index 00000000..9975569b --- /dev/null +++ b/tests/cassettes/test_claim_get_next_page.yaml @@ -0,0 +1,101 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/claims?page_size=5 + response: + body: + string: '{"claims": [{"approved_amount": null, "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/cde3cb05bd1e4e6f8de416f301f44354.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/3617f2bdfed24000b62349577cc77b85.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/6fc76e0969d94780811a7baf5c1cd4ca.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:48:00Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:48:00Z"}], + "id": "clm_09ce975320fe4661af0f80a68022ee76", "insurance_amount": "100.00", + "insurance_id": "ins_7bcb457363834ebd88ba419138138fbc", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:48:00Z", "tracking_code": "9400100208303109500676", "type": + "damage", "updated_at": "2025-03-06T19:48:00Z"}, {"approved_amount": null, + "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/8fb0b33e39004bfea8bffabf242d48c8.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/6acf5385ee494fc2bfcac704b9dcfddf.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/5bf9e0415088448a937d39348a485593.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:47:58Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:47:58Z"}], + "id": "clm_09ce5f03fd6b4310b9c5b7f306407214", "insurance_amount": "100.00", + "insurance_id": "ins_029e06b218ab48e0979236191bb04df0", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:47:58Z", "tracking_code": "9400100208303109500669", "type": + "damage", "updated_at": "2025-03-06T19:47:58Z"}, {"approved_amount": null, + "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250221/b323c9d15a5f45669b16994df4233f82.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250221/71287f6c2f984eb58e336ff7266d4d7a.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250221/662abb57720b4740a6003e285451c988.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-02-21T18:30:53Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-02-21T18:30:53Z"}], + "id": "clm_09cc787188c1462aaa437fcba47ee03d", "insurance_amount": "100.00", + "insurance_id": "ins_730ae2cc418147938bfcac3e49ed1665", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_bfb151c83dbf4a8c97a494074041c11f", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-02-21T18:30:53Z", "tracking_code": "9400100208271116404754", "type": + "theft", "updated_at": "2025-02-21T18:30:53Z"}], "has_more": false}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '3374' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62667c9fbf1e2b97aae001878b2 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb57nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.041997' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_claim_retrieve.yaml b/tests/cassettes/test_claim_retrieve.yaml new file mode 100644 index 00000000..6b1cb27e --- /dev/null +++ b/tests/cassettes/test_claim_retrieve.yaml @@ -0,0 +1,636 @@ +interactions: +- request: + body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}, "customs_info": {"eel_pfc": "NOEEI 30.37(a)", "customs_certify": true, + "customs_signer": "Steve Brule", "contents_type": "merchandise", "contents_explanation": + "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": + [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, + "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": + "PNG", "invoice_number": "123"}, "reference": "123"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '954' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments + response: + body: + string: '{"id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "created_at": "2025-03-06T19:47:59Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:47:59Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_1291df2a92c34d0484e0b4b391213db1", + "object": "CustomsInfo", "created_at": "2025-03-06T19:47:59Z", "updated_at": + "2025-03-06T19:47:59Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_c8d91674ee2742eaa751f6a354488a1e", "object": "CustomsItem", + "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_106aad69070e47e0a63014a0ff424828", + "object": "Parcel", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_c0906e3e66874d26808a096bc9063c0f", + "object": "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8178ba6a5a414e43b01703b4062a1afd", + "object": "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_136f13c287d34b3ba51f3a26bdc61932", + "object": "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_e827fb21fac311efb3b0ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:47:59+00:00", "updated_at": + "2025-03-06T19:47:59+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e827fb21fac311efb3b0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "forms": [], "fees": [], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '5160' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/shipments/shp_1bb0f57e60d6448b84a94a9e120629bf + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62a67c9fbefe2b97aac001875ed + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb43nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.222811' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{"rate": {"id": "rate_8178ba6a5a414e43b01703b4062a1afd"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '57' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/shp_1bb0f57e60d6448b84a94a9e120629bf/buy + response: + body: + string: '{"id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "created_at": "2025-03-06T19:47:59Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109500676", "updated_at": "2025-03-06T19:48:00Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_1291df2a92c34d0484e0b4b391213db1", "object": "CustomsInfo", "created_at": + "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_c8d91674ee2742eaa751f6a354488a1e", + "object": "CustomsItem", "created_at": "2025-03-06T19:47:59Z", "updated_at": + "2025-03-06T19:47:59Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_106aad69070e47e0a63014a0ff424828", + "object": "Parcel", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_fb6b9be81ac54bcfa237b572bdc4a6c8", + "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:48:00Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:47:59Z", + "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e8a29432d8244f4da9aab6664650a4d383.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_c0906e3e66874d26808a096bc9063c0f", "object": + "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8178ba6a5a414e43b01703b4062a1afd", + "object": "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_136f13c287d34b3ba51f3a26bdc61932", + "object": "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_8178ba6a5a414e43b01703b4062a1afd", "object": + "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_8df7c31984b84c2a87210b822c4fbd47", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500676", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:48:00Z", + "updated_at": "2025-03-06T19:48:00Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier": "USPS", + "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": + "https://track.easypost.com/djE6dHJrXzhkZjdjMzE5ODRiODRjMmE4NzIxMGI4MjJjNGZiZDQ3"}, + "to_address": {"id": "adr_e827fb21fac311efb3b0ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": + 4, "return_address": {"id": "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e827fb21fac311efb3b0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": + [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "6.07000", "charged": true, "refunded": false}], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '7285' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62a67c9fbefe2b97aac00187633 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb35nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.678226' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"amount": "100.00"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '20' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/shp_1bb0f57e60d6448b84a94a9e120629bf/insure + response: + body: + string: '{"id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "created_at": "2025-03-06T19:47:59Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109500676", "updated_at": "2025-03-06T19:48:00Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_1291df2a92c34d0484e0b4b391213db1", "object": "CustomsInfo", "created_at": + "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_c8d91674ee2742eaa751f6a354488a1e", + "object": "CustomsItem", "created_at": "2025-03-06T19:47:59Z", "updated_at": + "2025-03-06T19:47:59Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": "100.00", "order_id": null, "parcel": {"id": "prcl_106aad69070e47e0a63014a0ff424828", + "object": "Parcel", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_fb6b9be81ac54bcfa237b572bdc4a6c8", + "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:48:00Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:47:59Z", + "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e8a29432d8244f4da9aab6664650a4d383.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_c0906e3e66874d26808a096bc9063c0f", "object": + "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8178ba6a5a414e43b01703b4062a1afd", + "object": "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_136f13c287d34b3ba51f3a26bdc61932", + "object": "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_8178ba6a5a414e43b01703b4062a1afd", "object": + "Rate", "created_at": "2025-03-06T19:47:59Z", "updated_at": "2025-03-06T19:47:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_8df7c31984b84c2a87210b822c4fbd47", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500676", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:00Z", + "updated_at": "2025-03-06T19:48:00Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:00Z", "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", + "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:00Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:00Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": + [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class + Package Service", "container_type": null, "est_delivery_date_local": null, + "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzhkZjdjMzE5ODRiODRjMmE4NzIxMGI4MjJjNGZiZDQ3"}, + "to_address": {"id": "adr_e827fb21fac311efb3b0ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": + 4, "return_address": {"id": "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_e827fb21fac311efb3b0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": + [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "6.07000", "charged": true, "refunded": false}, {"object": "Fee", "type": + "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": false}], + "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '8509' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62a67c9fbf0e2b97aac00187709 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb53nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.224067' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"type": "damage", "email_evidence_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "invoice_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "supporting_documentation_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "description": "Test description", "contact_email": "test@example.com", "tracking_code": + "9400100208303109500676", "amount": "100.00"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '618' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/claims + response: + body: + string: '{"approved_amount": null, "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/cde3cb05bd1e4e6f8de416f301f44354.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/3617f2bdfed24000b62349577cc77b85.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/6fc76e0969d94780811a7baf5c1cd4ca.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:48:00Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:48:00Z"}], + "id": "clm_09ce975320fe4661af0f80a68022ee76", "insurance_amount": "100.00", + "insurance_id": "ins_7bcb457363834ebd88ba419138138fbc", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:48:00Z", "tracking_code": "9400100208303109500676", "type": + "damage", "updated_at": "2025-03-06T19:48:00Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1115' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62a67c9fbf0e2b97aac00187750 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb33nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.855502' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/claims/clm_09ce975320fe4661af0f80a68022ee76 + response: + body: + string: '{"approved_amount": null, "attachments": ["https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/cde3cb05bd1e4e6f8de416f301f44354.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/3617f2bdfed24000b62349577cc77b85.png", + "https://easypost-files.s3-us-west-2.amazonaws.com/insurance/20250306/6fc76e0969d94780811a7baf5c1cd4ca.png"], + "check_delivery_address": null, "contact_email": "test@example.com", "created_at": + "2025-03-06T19:48:00Z", "description": "Test description", "history": [{"status": + "submitted", "status_detail": "Claim was created.", "timestamp": "2025-03-06T19:48:00Z"}], + "id": "clm_09ce975320fe4661af0f80a68022ee76", "insurance_amount": "100.00", + "insurance_id": "ins_7bcb457363834ebd88ba419138138fbc", "mode": "test", "object": + "Claim", "payment_method": "easypost_wallet", "recipient_name": null, "requested_amount": + "100.00", "salvage_value": null, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", + "status": "submitted", "status_detail": "Claim was created.", "status_timestamp": + "2025-03-06T19:48:00Z", "tracking_code": "9400100208303109500676", "type": + "damage", "updated_at": "2025-03-06T19:48:00Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1115' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62a67c9fbf1e2b97aac0018783f + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb40nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.036017' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_client_make_api_call.yaml b/tests/cassettes/test_client_make_api_call.yaml new file mode 100644 index 00000000..4b1cf691 --- /dev/null +++ b/tests/cassettes/test_client_make_api_call.yaml @@ -0,0 +1,74 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/addresses?page_size=1 + response: + body: + string: '{"addresses": [{"id": "adr_b532f4f1bc0311f0b86eac1f6bc539aa", "object": + "Address", "created_at": "2025-11-07T18:00:55Z", "updated_at": "2025-11-07T18:00:55Z", + "name": null, "company": "EASYPOST", "street1": "000 UNKNOWN STREET", "street2": + null, "city": "NOT A CITY", "state": "ZZ", "zip": "00001", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [{"code": "E.ADDRESS.NOT_FOUND", "field": + "address", "message": "Address not found", "suggestion": null}], "details": + null}, "delivery": {"success": true, "errors": [{"code": "E.ADDRESS.NOT_FOUND", + "field": "address", "message": "Address not found", "suggestion": null}], + "details": {"latitude": null, "longitude": null, "time_zone": null}}, "verify_carrier": + "ups"}}], "has_more": true}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '842' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - f785caeb698e03c9e786b0840112d88f + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb56nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 0dcc3a6efb + - extlb2nuq c01291cd8f + x-runtime: + - '0.061229' + x-version-label: + - easypost-202602121634-14fe075b27-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_customer_portal_account_link_create.yaml b/tests/cassettes/test_customer_portal_account_link_create.yaml new file mode 100644 index 00000000..b40e880c --- /dev/null +++ b/tests/cassettes/test_customer_portal_account_link_create.yaml @@ -0,0 +1,147 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/users/children + response: + body: + string: '{"children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "", "verified": true, "created_at": "2023-12-11T17:13:38Z"}, + {"id": "user_437e724f37de412db6df8821968d8d3c", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User2", "phone_number": + "", "verified": true, "created_at": "2023-12-11T17:13:43Z"}, {"id": + "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", + "name": "Child Account Name22", "phone_number": "", "verified": + true, "created_at": "2024-01-04T19:56:21Z"}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "", "verified": true, "created_at": + "2024-01-19T21:42:21Z"}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "", "verified": true, "created_at": "2024-01-19T21:44:18Z"}], + "has_more": false}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1114' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7265c3006917a058e786c0df01078abe + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb67nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq c0061e0a2e + - extlb1nuq cbbd141214 + x-runtime: + - '0.076112' + x-version-label: + - easypost-202511141214-a539f53042-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"session_type": "account_onboarding", "user_id": "user_584be78af2f141e988b6c60dda9dd8fd", + "refresh_url": "https://example.com/refresh", "return_url": "https://example.com/return"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '180' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/customer_portal/account_link + response: + body: + string: '{"link": "https://app.easypost.com/customer-portal/onboarding?session_id=nSsXPSJhZnqUzKUK", + "object": "CustomerPortalAccountLink", "expires_at": "2025-11-14T21:39:16Z", + "created_at": "2025-11-14T21:34:16Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '199' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7265c2fb6917a058e786c0e001078b74 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb43nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq c0061e0a2e + - extlb1nuq cbbd141214 + x-runtime: + - '0.125907' + x-version-label: + - easypost-202511141214-a539f53042-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_customs_info_create.yaml b/tests/cassettes/test_customs_info_create.yaml index 10381775..2258959b 100644 --- a/tests/cassettes/test_customs_info_create.yaml +++ b/tests/cassettes/test_customs_info_create.yaml @@ -24,14 +24,14 @@ interactions: uri: https://api.easypost.com/v2/customs_infos response: body: - string: '{"id": "cstinfo_8af50d7ac9274d88bb7056a198dd6d7f", "object": "CustomsInfo", - "created_at": "2023-05-12T21:27:53Z", "updated_at": "2023-05-12T21:27:53Z", + string: '{"id": "cstinfo_05b128ea88f14b1faa98a7016564debd", "object": "CustomsInfo", + "created_at": "2025-03-06T19:48:04Z", "updated_at": "2025-03-06T19:48:04Z", "contents_explanation": "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_eb8b3ea1a7014262a050cf6cd09e0755", - "object": "CustomsItem", "created_at": "2023-05-12T21:27:53Z", "updated_at": - "2023-05-12T21:27:53Z", "description": "Sweet shirts", "hs_tariff_number": + "test", "declaration": null, "customs_items": [{"id": "cstitem_f3567deaea214b1aa4a9a8270d5de29e", + "object": "CustomsItem", "created_at": "2025-03-06T19:48:04Z", "updated_at": + "2025-03-06T19:48:04Z", "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": null}]}' @@ -42,12 +42,10 @@ interactions: - '794' content-type: - application/json; charset=utf-8 - etag: - - W/"8f1a1b8b56fd5ba3f20a1980b84f3e06" expires: - '0' location: - - /api/v2/customs_infos/cstinfo_8af50d7ac9274d88bb7056a198dd6d7f + - /api/v2/customs_infos/cstinfo_05b128ea88f14b1faa98a7016564debd pragma: - no-cache referrer-policy: @@ -63,21 +61,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - cdb1f66a645eaf59e2aac6be00020c73 + - 8e8eb62867c9fbf4e2b97ab000187b4a x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.030852' + - '0.039503' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_customs_info_retrieve.yaml b/tests/cassettes/test_customs_info_retrieve.yaml index a2ecbb1f..2484bb1e 100644 --- a/tests/cassettes/test_customs_info_retrieve.yaml +++ b/tests/cassettes/test_customs_info_retrieve.yaml @@ -24,14 +24,14 @@ interactions: uri: https://api.easypost.com/v2/customs_infos response: body: - string: '{"id": "cstinfo_174597bae5c04e9cba4d39caca585628", "object": "CustomsInfo", - "created_at": "2023-05-12T21:27:54Z", "updated_at": "2023-05-12T21:27:54Z", + string: '{"id": "cstinfo_d9ae40b6b146421b887a36fa89c0d2d4", "object": "CustomsInfo", + "created_at": "2025-03-06T19:48:04Z", "updated_at": "2025-03-06T19:48:04Z", "contents_explanation": "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_bdd9c864a16740b2a67866098bc8c83d", - "object": "CustomsItem", "created_at": "2023-05-12T21:27:54Z", "updated_at": - "2023-05-12T21:27:54Z", "description": "Sweet shirts", "hs_tariff_number": + "test", "declaration": null, "customs_items": [{"id": "cstitem_92443ed7dacf431a8c5bcb8f42620517", + "object": "CustomsItem", "created_at": "2025-03-06T19:48:04Z", "updated_at": + "2025-03-06T19:48:04Z", "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": null}]}' @@ -42,12 +42,10 @@ interactions: - '794' content-type: - application/json; charset=utf-8 - etag: - - W/"e27368c5f4c1925b9051a59082a32b9e" expires: - '0' location: - - /api/v2/customs_infos/cstinfo_174597bae5c04e9cba4d39caca585628 + - /api/v2/customs_infos/cstinfo_d9ae40b6b146421b887a36fa89c0d2d4 pragma: - no-cache referrer-policy: @@ -63,21 +61,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - cdb1f667645eaf59e2aac6bf00020c99 + - 8e8eb62767c9fbf4e2b97ab100187b7f x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.037906' + - '0.073920' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -97,17 +94,17 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/customs_infos/cstinfo_174597bae5c04e9cba4d39caca585628 + uri: https://api.easypost.com/v2/customs_infos/cstinfo_d9ae40b6b146421b887a36fa89c0d2d4 response: body: - string: '{"id": "cstinfo_174597bae5c04e9cba4d39caca585628", "object": "CustomsInfo", - "created_at": "2023-05-12T21:27:54Z", "updated_at": "2023-05-12T21:27:54Z", + string: '{"id": "cstinfo_d9ae40b6b146421b887a36fa89c0d2d4", "object": "CustomsInfo", + "created_at": "2025-03-06T19:48:04Z", "updated_at": "2025-03-06T19:48:04Z", "contents_explanation": "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_bdd9c864a16740b2a67866098bc8c83d", - "object": "CustomsItem", "created_at": "2023-05-12T21:27:54Z", "updated_at": - "2023-05-12T21:27:54Z", "description": "Sweet shirts", "hs_tariff_number": + "test", "declaration": null, "customs_items": [{"id": "cstitem_92443ed7dacf431a8c5bcb8f42620517", + "object": "CustomsItem", "created_at": "2025-03-06T19:48:04Z", "updated_at": + "2025-03-06T19:48:04Z", "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": null}]}' @@ -118,8 +115,6 @@ interactions: - '794' content-type: - application/json; charset=utf-8 - etag: - - W/"e27368c5f4c1925b9051a59082a32b9e" expires: - '0' pragma: @@ -137,21 +132,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - cdb1f667645eaf5ae2aac6bf00020ca7 + - 8e8eb62767c9fbf4e2b97ab100187b99 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.076913' + - '0.028455' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_customs_item_create.yaml b/tests/cassettes/test_customs_item_create.yaml index f7c39600..4e074d10 100644 --- a/tests/cassettes/test_customs_item_create.yaml +++ b/tests/cassettes/test_customs_item_create.yaml @@ -21,8 +21,8 @@ interactions: uri: https://api.easypost.com/v2/customs_items response: body: - string: '{"id": "cstitem_efce3e12f1884baaa4c7d79085b019c0", "object": "CustomsItem", - "created_at": "2023-05-12T21:27:54Z", "updated_at": "2023-05-12T21:27:54Z", + string: '{"id": "cstitem_53ea67b599dd44e2ab90b794ead81234", "object": "CustomsItem", + "created_at": "2025-03-06T19:48:04Z", "updated_at": "2025-03-06T19:48:04Z", "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": @@ -34,12 +34,10 @@ interactions: - '376' content-type: - application/json; charset=utf-8 - etag: - - W/"d14afb975b9547d9fd4b30363555abc3" expires: - '0' location: - - /api/v2/customs_items/cstitem_efce3e12f1884baaa4c7d79085b019c0 + - /api/v2/customs_items/cstitem_53ea67b599dd44e2ab90b794ead81234 pragma: - no-cache referrer-policy: @@ -50,25 +48,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 52975b54645eaf5ae2aac6c0000f8eee + - 8e8eb62867c9fbf4e2b97ab200187bbf x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.026901' + - '0.034055' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_customs_item_retrieve.yaml b/tests/cassettes/test_customs_item_retrieve.yaml index 284d93b4..77678a9f 100644 --- a/tests/cassettes/test_customs_item_retrieve.yaml +++ b/tests/cassettes/test_customs_item_retrieve.yaml @@ -21,8 +21,8 @@ interactions: uri: https://api.easypost.com/v2/customs_items response: body: - string: '{"id": "cstitem_07988de34f094d4bb89b50f3c0b5fe0d", "object": "CustomsItem", - "created_at": "2023-05-12T21:27:54Z", "updated_at": "2023-05-12T21:27:54Z", + string: '{"id": "cstitem_c175be7a6c5a43a584a77efa5ebaaede", "object": "CustomsItem", + "created_at": "2025-03-06T19:48:05Z", "updated_at": "2025-03-06T19:48:05Z", "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": @@ -34,12 +34,10 @@ interactions: - '376' content-type: - application/json; charset=utf-8 - etag: - - W/"1f31e2d103ff414109cc7121e547eb38" expires: - '0' location: - - /api/v2/customs_items/cstitem_07988de34f094d4bb89b50f3c0b5fe0d + - /api/v2/customs_items/cstitem_c175be7a6c5a43a584a77efa5ebaaede pragma: - no-cache referrer-policy: @@ -55,20 +53,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b51645eaf5ae2aac6c1000f8efd + - 8e8eb62667c9fbf5e2b97ab300187be2 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.028069' + - '0.028563' x-version-label: - - easypost-202305121849-b449e9bf47-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -88,11 +86,11 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/customs_items/cstitem_07988de34f094d4bb89b50f3c0b5fe0d + uri: https://api.easypost.com/v2/customs_items/cstitem_c175be7a6c5a43a584a77efa5ebaaede response: body: - string: '{"id": "cstitem_07988de34f094d4bb89b50f3c0b5fe0d", "object": "CustomsItem", - "created_at": "2023-05-12T21:27:54Z", "updated_at": "2023-05-12T21:27:54Z", + string: '{"id": "cstitem_c175be7a6c5a43a584a77efa5ebaaede", "object": "CustomsItem", + "created_at": "2025-03-06T19:48:05Z", "updated_at": "2025-03-06T19:48:05Z", "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": @@ -104,8 +102,6 @@ interactions: - '376' content-type: - application/json; charset=utf-8 - etag: - - W/"1f31e2d103ff414109cc7121e547eb38" expires: - '0' pragma: @@ -123,20 +119,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 52975b51645eaf5ae2aac6c1000f8f07 + - 8e8eb62667c9fbf5e2b97ab300187bf3 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.018146' + - '0.022030' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_embeddable_session_create.yaml b/tests/cassettes/test_embeddable_session_create.yaml new file mode 100644 index 00000000..a292922f --- /dev/null +++ b/tests/cassettes/test_embeddable_session_create.yaml @@ -0,0 +1,143 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/users/children + response: + body: + string: '{"children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "", "verified": true, "created_at": "2023-12-11T17:13:38Z"}, + {"id": "user_437e724f37de412db6df8821968d8d3c", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User2", "phone_number": + "", "verified": true, "created_at": "2023-12-11T17:13:43Z"}, {"id": + "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", + "name": "Child Account Name22", "phone_number": "", "verified": + true, "created_at": "2024-01-04T19:56:21Z"}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "", "verified": true, "created_at": + "2024-01-19T21:42:21Z"}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "", "verified": true, "created_at": "2024-01-19T21:44:18Z"}], + "has_more": false}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1114' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7265c2fe6917a363e786c4e3010cde14 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb34nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb5nuq c0061e0a2e + - extlb1nuq cbbd141214 + x-runtime: + - '0.085273' + x-version-label: + - easypost-202511141214-a539f53042-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: '{"origin_host": "https://example.com", "user_id": "user_584be78af2f141e988b6c60dda9dd8fd"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '90' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/embeddables/session + response: + body: + string: '{"object": "EmbeddablesSession", "session_id": "5iL-W-NePFb0FU_n", + "expires_at": "2025-11-14T22:02:15Z", "created_at": "2025-11-14T21:47:15Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '135' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7265c2fc6917a363e786c4e4010cde8f + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb65nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq c0061e0a2e + - extlb1nuq cbbd141214 + x-runtime: + - '0.141938' + x-version-label: + - easypost-202511141214-a539f53042-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_endshipper_all.yaml b/tests/cassettes/test_endshipper_all.yaml index 9f9a115a..10245d3d 100644 --- a/tests/cassettes/test_endshipper_all.yaml +++ b/tests/cassettes/test_endshipper_all.yaml @@ -48,8 +48,6 @@ interactions: - '1883' content-type: - application/json; charset=utf-8 - etag: - - W/"db8ceea617c141dfcd08324be9b162d0" expires: - '0' pragma: @@ -67,20 +65,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d164626697e7873378001df054 + - 8e8eb62867c9fbf5e2b97acd00187ca8 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.467413' + - '0.607331' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_endshipper_create.yaml b/tests/cassettes/test_endshipper_create.yaml index 3d4ad168..f8dae83c 100644 --- a/tests/cassettes/test_endshipper_create.yaml +++ b/tests/cassettes/test_endshipper_create.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/end_shippers response: body: - string: '{"id": "es_a22ec4be7f1c493dadd7387a473a1ab5", "object": "EndShipper", - "mode": "test", "created_at": "2023-05-15T17:06:31+00:00", "updated_at": "2023-05-15T17:06:31+00:00", + string: '{"id": "es_5e3ea7d1189e454eac0441b7f0f7ea0d", "object": "EndShipper", + "mode": "test", "created_at": "2025-03-06T19:48:05+00:00", "updated_at": "2025-03-06T19:48:05+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": ""}' @@ -34,8 +34,6 @@ interactions: - '365' content-type: - application/json; charset=utf-8 - etag: - - W/"0dc84aacbbd1c8eba7534638af7a26fc" expires: - '0' pragma: @@ -53,20 +51,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2cf64626697e7873376001defdb + - 8e8eb62767c9fbf5e2b97ab400187c1e x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.047065' + - '0.048818' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_endshipper_retrieve.yaml b/tests/cassettes/test_endshipper_retrieve.yaml index d819b7ce..891c2d06 100644 --- a/tests/cassettes/test_endshipper_retrieve.yaml +++ b/tests/cassettes/test_endshipper_retrieve.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/end_shippers response: body: - string: '{"id": "es_fdfc86215f714c83983c36d4bdb4c02c", "object": "EndShipper", - "mode": "test", "created_at": "2023-05-15T17:10:42+00:00", "updated_at": "2023-05-15T17:10:42+00:00", + string: '{"id": "es_a5f3f1ad2ab8432593d05a81983d189f", "object": "EndShipper", + "mode": "test", "created_at": "2025-03-06T19:48:05+00:00", "updated_at": "2025-03-06T19:48:05+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": ""}' @@ -34,8 +34,6 @@ interactions: - '365' content-type: - application/json; charset=utf-8 - etag: - - W/"90e7b59409069e588a6f0ba0f294e8a7" expires: - '0' pragma: @@ -48,25 +46,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 44e495b564626792e78733e1001dd798 + - 8e8eb62767c9fbf5e2b97ab500187c49 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.127109' + - '0.053052' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -86,11 +86,11 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/end_shippers/es_fdfc86215f714c83983c36d4bdb4c02c + uri: https://api.easypost.com/v2/end_shippers/es_a5f3f1ad2ab8432593d05a81983d189f response: body: - string: '{"id": "es_fdfc86215f714c83983c36d4bdb4c02c", "object": "EndShipper", - "mode": "test", "created_at": "2023-05-15T17:10:42+00:00", "updated_at": "2023-05-15T17:10:42+00:00", + string: '{"id": "es_a5f3f1ad2ab8432593d05a81983d189f", "object": "EndShipper", + "mode": "test", "created_at": "2025-03-06T19:48:05+00:00", "updated_at": "2025-03-06T19:48:05+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": ""}' @@ -101,8 +101,6 @@ interactions: - '367' content-type: - application/json; charset=utf-8 - etag: - - W/"4e32647a5ff79d299a8a6852282b5b4e" expires: - '0' pragma: @@ -120,20 +118,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b564626792e78733e1001dd7b2 + - 8e8eb62767c9fbf5e2b97ab500187c69 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.034040' + - '0.035268' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_endshipper_update.yaml b/tests/cassettes/test_endshipper_update.yaml index 9c6b0405..b87ea667 100644 --- a/tests/cassettes/test_endshipper_update.yaml +++ b/tests/cassettes/test_endshipper_update.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/end_shippers response: body: - string: '{"id": "es_2544052ddb324b189db927d9fc2c57a8", "object": "EndShipper", - "mode": "test", "created_at": "2023-05-15T17:12:14+00:00", "updated_at": "2023-05-15T17:12:14+00:00", + string: '{"id": "es_1fcf924d41404c4daee3fba4c2946f87", "object": "EndShipper", + "mode": "test", "created_at": "2025-03-06T19:48:06+00:00", "updated_at": "2025-03-06T19:48:06+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": ""}' @@ -34,8 +34,6 @@ interactions: - '365' content-type: - application/json; charset=utf-8 - etag: - - W/"537d10fcc17cf9fa0dbd4baa596adc3b" expires: - '0' pragma: @@ -53,20 +51,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b0646267eee787345e001e0ae8 + - 8e8eb62b67c9fbf6e2b97ace00187df5 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.047672' + - '0.049372' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -92,11 +90,11 @@ interactions: user-agent: - method: PUT - uri: https://api.easypost.com/v2/end_shippers/es_2544052ddb324b189db927d9fc2c57a8 + uri: https://api.easypost.com/v2/end_shippers/es_1fcf924d41404c4daee3fba4c2946f87 response: body: - string: '{"id": "es_2544052ddb324b189db927d9fc2c57a8", "object": "EndShipper", - "mode": "test", "created_at": "2023-05-15T17:12:14+00:00", "updated_at": "2023-05-15T17:12:14+00:00", + string: '{"id": "es_1fcf924d41404c4daee3fba4c2946f87", "object": "EndShipper", + "mode": "test", "created_at": "2025-03-06T19:48:06+00:00", "updated_at": "2025-03-06T19:48:06+00:00", "name": "CAPTAIN SPARROW", "company": "EASYPOST", "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": ""}' @@ -107,8 +105,6 @@ interactions: - '374' content-type: - application/json; charset=utf-8 - etag: - - W/"249c4184f944522a4d47509c626a0bd3" expires: - '0' pragma: @@ -121,25 +117,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 44e495b0646267eee787345e001e0b11 + - 8e8eb62b67c9fbf6e2b97ace00187e1c x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.047896' + - '0.059291' x-version-label: - - easypost-202305122104-29dd2d738a-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_error.yaml b/tests/cassettes/test_error.yaml index 1d7313c6..e4baf953 100644 --- a/tests/cassettes/test_error.yaml +++ b/tests/cassettes/test_error.yaml @@ -1,6 +1,6 @@ interactions: - request: - body: '{"shipment": {}, "carbon_offset": false}' + body: '{"shipment": {}}' headers: Accept: - '*/*' @@ -9,7 +9,7 @@ interactions: Connection: - keep-alive Content-Length: - - '40' + - '16' Content-Type: - application/json authorization: @@ -46,20 +46,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - b4a2ea09646523c3e2b9045d00039312 + - 8e8eb62967c9fbf6e2b97acf00187e62 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.038655' + - '0.019930' x-version-label: - - easypost-202305171805-88442329bc-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_error_alternative_format.yaml b/tests/cassettes/test_error_alternative_format.yaml new file mode 100644 index 00000000..bfe5d885 --- /dev/null +++ b/tests/cassettes/test_error_alternative_format.yaml @@ -0,0 +1,73 @@ +interactions: +- request: + body: '{"type": "damage", "email_evidence_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "invoice_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "supporting_documentation_attachments": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAeUlEQVR42mP8//8/AwAI/AL+4Q7AIAAAAABJRU5ErkJggg=="], + "description": "Test description", "contact_email": "test@example.com", "tracking_code": + "123"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '579' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/claims + response: + body: + string: '{"error": {"code": "NOT_FOUND", "errors": ["No eligible insurance found + with provided tracking code."], "message": "The requested resource could not + be found."}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '156' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62b67c9fbf6e2b97ad000187ea1 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb36nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.030414' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 404 + message: Not Found +version: 1 diff --git a/tests/cassettes/test_event_all.yaml b/tests/cassettes/test_event_all.yaml index b77c4adc..2b0e16c7 100644 --- a/tests/cassettes/test_event_all.yaml +++ b/tests/cassettes/test_event_all.yaml @@ -16,31 +16,29 @@ interactions: uri: https://api.easypost.com/v2/events?page_size=5 response: body: - string: '{"events": [{"description": "tracker.updated", "id": "evt_10273e48f0fd11ed84793ba5a8eedd27", + string: '{"events": [{"description": "tracker.created", "id": "evt_ebde5d3cfac311ef84522bd0c5c586a1", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:42:00.675Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_09ce2606f0fd11edbdad75c323776192", "user_id": + "2025-03-06T19:48:05.456Z", "mode": "test", "object": "Event"}, {"description": + "tracker.created", "id": "evt_e8d4ccdefac311ef85c247061f0fe827", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:41:50.025Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_ec52b330f0fc11ed8fb25952d8250621", "user_id": + "2025-03-06T19:48:00.360Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e45091a2fac311ef8fdf07d8bb7ce84b", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:41:00.562Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_e5fa84d6f0fc11ed8a553172f33bdada", "user_id": + "2025-03-06T19:47:52.782Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e3aa5026fac311ef87b57da2a609c037", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:40:49.917Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_c87dfcdaf0fc11ed853c153e3118e97d", "user_id": + "2025-03-06T19:47:51.693Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e12e412cfac311efbc965774cea6d58d", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:40:00.447Z", "mode": "test", "object": "Event"}], "has_more": + "2025-03-06T19:47:47.524Z", "mode": "test", "object": "Event"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '1118' + - '1112' content-type: - application/json; charset=utf-8 - etag: - - W/"61a0f7c32156b73ff33fabdb5284da68" expires: - '0' pragma: @@ -58,20 +56,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2cf64626ba0e7874083002057b8 + - 8e8eb62967c9fbf7e2b97ad100187ee7 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.267240' + - '0.379323' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_event_get_next_page.yaml b/tests/cassettes/test_event_get_next_page.yaml index ac43d6f3..f25ac477 100644 --- a/tests/cassettes/test_event_get_next_page.yaml +++ b/tests/cassettes/test_event_get_next_page.yaml @@ -16,31 +16,29 @@ interactions: uri: https://api.easypost.com/v2/events?page_size=5 response: body: - string: '{"events": [{"description": "tracker.updated", "id": "evt_10273e48f0fd11ed84793ba5a8eedd27", + string: '{"events": [{"description": "tracker.created", "id": "evt_ebde5d3cfac311ef84522bd0c5c586a1", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:42:00.675Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_09ce2606f0fd11edbdad75c323776192", "user_id": + "2025-03-06T19:48:05.456Z", "mode": "test", "object": "Event"}, {"description": + "tracker.created", "id": "evt_e8d4ccdefac311ef85c247061f0fe827", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:41:50.025Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_ec52b330f0fc11ed8fb25952d8250621", "user_id": + "2025-03-06T19:48:00.360Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e45091a2fac311ef8fdf07d8bb7ce84b", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:41:00.562Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_e5fa84d6f0fc11ed8a553172f33bdada", "user_id": + "2025-03-06T19:47:52.782Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e3aa5026fac311ef87b57da2a609c037", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:40:49.917Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_c87dfcdaf0fc11ed853c153e3118e97d", "user_id": + "2025-03-06T19:47:51.693Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e12e412cfac311efbc965774cea6d58d", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:40:00.447Z", "mode": "test", "object": "Event"}], "has_more": + "2025-03-06T19:47:47.524Z", "mode": "test", "object": "Event"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '1118' + - '1112' content-type: - application/json; charset=utf-8 - etag: - - W/"61a0f7c32156b73ff33fabdb5284da68" expires: - '0' pragma: @@ -58,20 +56,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d064626ba0e7874084002057f4 + - 8e8eb62567c9fbf7e2b97ad200187fae x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.170665' + - '0.301702' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -91,34 +89,32 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/events?before_id=evt_c87dfcdaf0fc11ed853c153e3118e97d&page_size=5 + uri: https://api.easypost.com/v2/events?before_id=evt_e12e412cfac311efbc965774cea6d58d&page_size=5 response: body: - string: '{"events": [{"description": "tracker.updated", "id": "evt_c22867d0f0fc11edbf5125fe92c43377", + string: '{"events": [{"description": "batch.updated", "id": "evt_ddab99befac311efb1c6057c04bd81f2", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:39:49.820Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_a4a7e438f0fc11edbb1f752a305029e8", "user_id": + "2025-03-06T19:47:41.635Z", "mode": "test", "object": "Event"}, {"description": + "batch.created", "id": "evt_dd964b36fac311ef94b45548938ae146", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:39:00.324Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_9e56d940f0fc11edbe666751f31c23c9", "user_id": + "2025-03-06T19:47:41.495Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_dd7ecaa6fac311ef9e7141b3d935e850", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:38:49.727Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_9817a12cf0fc11eda7595724f9200c12", "user_id": + "2025-03-06T19:47:41.341Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_dd52f5e8fac311efbb3e197210b72367", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:38:39.246Z", "mode": "test", "object": "Event"}, {"description": - "tracker.created", "id": "evt_92c775f8f0fc11edbe070b24beca53c4", "user_id": + "2025-03-06T19:47:41.054Z", "mode": "test", "object": "Event"}, {"description": + "batch.created", "id": "evt_dd41070cfac311efa5045f7a964274c9", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:38:30.332Z", "mode": "test", "object": "Event"}], "has_more": + "2025-03-06T19:47:40.936Z", "mode": "test", "object": "Event"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '1118' + - '1108' content-type: - application/json; charset=utf-8 - etag: - - W/"7d718e919329335c52fb8ef7535143e3" expires: - '0' pragma: @@ -136,20 +132,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d064626ba1e78740840020580c + - 8e8eb62567c9fbf7e2b97ad20018801b x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.180954' + - '0.343607' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_event_retrieve.yaml b/tests/cassettes/test_event_retrieve.yaml index 2256deb4..a9ff66e0 100644 --- a/tests/cassettes/test_event_retrieve.yaml +++ b/tests/cassettes/test_event_retrieve.yaml @@ -16,31 +16,29 @@ interactions: uri: https://api.easypost.com/v2/events?page_size=5 response: body: - string: '{"events": [{"description": "tracker.updated", "id": "evt_10273e48f0fd11ed84793ba5a8eedd27", + string: '{"events": [{"description": "tracker.created", "id": "evt_ebde5d3cfac311ef84522bd0c5c586a1", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:42:00.675Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_09ce2606f0fd11edbdad75c323776192", "user_id": + "2025-03-06T19:48:05.456Z", "mode": "test", "object": "Event"}, {"description": + "tracker.created", "id": "evt_e8d4ccdefac311ef85c247061f0fe827", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:41:50.025Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_ec52b330f0fc11ed8fb25952d8250621", "user_id": + "2025-03-06T19:48:00.360Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e45091a2fac311ef8fdf07d8bb7ce84b", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:41:00.562Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_e5fa84d6f0fc11ed8a553172f33bdada", "user_id": + "2025-03-06T19:47:52.782Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e3aa5026fac311ef87b57da2a609c037", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:40:49.917Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_c87dfcdaf0fc11ed853c153e3118e97d", "user_id": + "2025-03-06T19:47:51.693Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_e12e412cfac311efbc965774cea6d58d", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-12T19:40:00.447Z", "mode": "test", "object": "Event"}], "has_more": + "2025-03-06T19:47:47.524Z", "mode": "test", "object": "Event"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '1118' + - '1112' content-type: - application/json; charset=utf-8 - etag: - - W/"61a0f7c32156b73ff33fabdb5284da68" expires: - '0' pragma: @@ -53,25 +51,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d364626ba1e787409c0020583f + - 8e8eb62867c9fbf8e2b97ad30018809c x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.262186' + - '0.282236' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_event_retrieve_all_payloads.yaml b/tests/cassettes/test_event_retrieve_all_payloads.yaml index bcae4a42..28996ff1 100644 --- a/tests/cassettes/test_event_retrieve_all_payloads.yaml +++ b/tests/cassettes/test_event_retrieve_all_payloads.yaml @@ -20,18 +20,16 @@ interactions: uri: https://api.easypost.com/v2/webhooks response: body: - string: '{"id": "hook_30cbb3bcf43711eda27917199f9eab66", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T22:15:40Z", - "disabled_at": null}' + string: '{"id": "hook_ede7aea8fac311ef8c6613b647fc5eff", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:48:09Z", + "disabled_at": null, "custom_headers": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '181' content-type: - application/json; charset=utf-8 - etag: - - W/"0b3a022179ea56708476ff21fddeac78" expires: - '0' pragma: @@ -49,20 +47,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56464008be789616500454978 + - 8e8eb62667c9fbf8e2b97ad40018811b x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.145589' + - '0.222058' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -75,7 +73,7 @@ interactions: "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": "USPS"}]}}' headers: Accept: @@ -85,7 +83,7 @@ interactions: Connection: - keep-alive Content-Length: - - '610' + - '620' Content-Type: - application/json authorization: @@ -96,9 +94,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_6a8cc8c3ffa0487090ac2a78560381a8", "object": "Batch", + string: '{"id": "batch_8112c2c8dce14aa291bae18c30d9092d", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-16T22:15:39Z", "updated_at": "2023-05-16T22:15:39Z", + "created_at": "2025-03-06T19:48:09Z", "updated_at": "2025-03-06T19:48:09Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -109,8 +107,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"95c902e14c2730a14518095df7403015" expires: - '0' pragma: @@ -128,20 +124,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56464008be789616500454999 + - 8e8eb62667c9fbf9e2b97ad40018816c x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.078742' + - '0.054295' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -164,21 +160,21 @@ interactions: uri: https://api.easypost.com/v2/events?page_size=5 response: body: - string: '{"events": [{"description": "batch.updated", "id": "evt_3114fc5cf43711ed92c01d9acf3b6d2f", + string: '{"events": [{"description": "tracker.created", "id": "evt_ef360e3afac311ef9cf959235e992e6e", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-16T22:15:40.219Z", "mode": "test", "object": "Event"}, {"description": - "batch.created", "id": "evt_30fa3458f43711edb0a95dbb9ce80898", "user_id": + "2025-03-06T19:48:11.063Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_ee4610c4fac311ef9d366f1fec144160", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-16T22:15:40.043Z", "mode": "test", "object": "Event"}, {"description": - "batch.updated", "id": "evt_01cecac2f43711edbfcc39fdecca41c5", "user_id": - "user_54356a6b96c940d8913961a3c7b909f2", "status": "completed", "created_at": - "2023-05-16T22:14:20.906Z", "mode": "test", "object": "Event"}, {"description": - "batch.created", "id": "evt_01ca2094f43711edac311769086f7b77", "user_id": - "user_54356a6b96c940d8913961a3c7b909f2", "status": "completed", "created_at": - "2023-05-16T22:14:20.875Z", "mode": "test", "object": "Event"}, {"description": - "tracker.updated", "id": "evt_cadfbb70f40911edba08274a5cb8030b", "user_id": + "2025-03-06T19:48:09.491Z", "mode": "test", "object": "Event"}, {"description": + "batch.created", "id": "evt_ee15e0defac311efacb60f245172ef6e", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-16T16:50:41.389Z", "mode": "test", "object": "Event"}], "has_more": + "2025-03-06T19:48:09.175Z", "mode": "test", "object": "Event"}, {"description": + "tracker.created", "id": "evt_ebde5d3cfac311ef84522bd0c5c586a1", "user_id": + "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": + "2025-03-06T19:48:05.456Z", "mode": "test", "object": "Event"}, {"description": + "tracker.created", "id": "evt_e8d4ccdefac311ef85c247061f0fe827", "user_id": + "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": + "2025-03-06T19:48:00.360Z", "mode": "test", "object": "Event"}], "has_more": true}' headers: cache-control: @@ -187,8 +183,6 @@ interactions: - '1114' content-type: - application/json; charset=utf-8 - etag: - - W/"e130af1ee1eb30fa0ff82b16eb2b6145" expires: - '0' pragma: @@ -206,20 +200,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e564640091e789616500454b76 + - 8e8eb62667c9fbfee2b97ad4001886b1 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.201761' + - '0.266756' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -239,7 +233,7 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/events/evt_3114fc5cf43711ed92c01d9acf3b6d2f/payloads + uri: https://api.easypost.com/v2/events/evt_ef360e3afac311ef9cf959235e992e6e/payloads response: body: string: '{"payloads": []}' @@ -250,8 +244,6 @@ interactions: - '15' content-type: - application/json; charset=utf-8 - etag: - - W/"b5e6dd0a7b95afc23c69e9e95aa4ce47" expires: - '0' pragma: @@ -269,20 +261,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e564640091e789616500454b92 + - 8e8eb62667c9fbfee2b97ad4001886fc x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.036003' + - '0.036244' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -304,7 +296,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/webhooks/hook_30cbb3bcf43711eda27917199f9eab66 + uri: https://api.easypost.com/v2/webhooks/hook_ede7aea8fac311ef8c6613b647fc5eff response: body: string: '{}' @@ -315,8 +307,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -329,25 +319,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e564640091e789616500454b9c + - 8e8eb62667c9fbfee2b97ad400188713 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.356449' + - '0.326052' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_event_retrieve_payload.yaml b/tests/cassettes/test_event_retrieve_payload.yaml index 44a271a7..27ea60b0 100644 --- a/tests/cassettes/test_event_retrieve_payload.yaml +++ b/tests/cassettes/test_event_retrieve_payload.yaml @@ -20,18 +20,16 @@ interactions: uri: https://api.easypost.com/v2/webhooks response: body: - string: '{"id": "hook_3499e3e2f43711edbb447565db124d54", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T22:15:46Z", - "disabled_at": null}' + string: '{"id": "hook_f19d25e6fac311efaf305b2397f4f7d3", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:48:15Z", + "disabled_at": null, "custom_headers": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '181' content-type: - application/json; charset=utf-8 - etag: - - W/"214d548f4b77946290e22683029b1755" expires: - '0' pragma: @@ -49,20 +47,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e064640092e789616600454bd6 + - 8e8eb62867c9fbffe2b97ad500188795 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb33nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.152518' + - '0.147598' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -75,7 +73,7 @@ interactions: "from_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": "USPS"}]}}' headers: Accept: @@ -85,7 +83,7 @@ interactions: Connection: - keep-alive Content-Length: - - '610' + - '620' Content-Type: - application/json authorization: @@ -96,9 +94,9 @@ interactions: uri: https://api.easypost.com/v2/batches response: body: - string: '{"id": "batch_3613de1570fd4802a09bdcc819fce1ca", "object": "Batch", + string: '{"id": "batch_34e423c2228549a6b09e36a269887be7", "object": "Batch", "mode": "test", "state": "creating", "num_shipments": 1, "reference": null, - "created_at": "2023-05-16T22:15:46Z", "updated_at": "2023-05-16T22:15:46Z", + "created_at": "2025-03-06T19:48:15Z", "updated_at": "2025-03-06T19:48:15Z", "scan_form": null, "shipments": [], "status": {"created": 0, "queued_for_purchase": 0, "creation_failed": 0, "postage_purchased": 0, "postage_purchase_failed": 0}, "pickup": null, "label_url": null}' @@ -109,8 +107,6 @@ interactions: - '384' content-type: - application/json; charset=utf-8 - etag: - - W/"f384683cef26655745fc3488715bc3b9" expires: - '0' pragma: @@ -128,20 +124,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e064640092e789616600454be6 + - 8e8eb62867c9fbffe2b97ad5001887c3 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.044101' + - '0.036705' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -164,31 +160,29 @@ interactions: uri: https://api.easypost.com/v2/events?page_size=5 response: body: - string: '{"events": [{"description": "batch.updated", "id": "evt_34dbac50f43711edba5907e39df03ec8", + string: '{"events": [{"description": "tracker.created", "id": "evt_f31be862fac311ef9aa4710dd2aee3b7", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-16T22:15:46.554Z", "mode": "test", "object": "Event"}, {"description": - "batch.created", "id": "evt_34c41b76f43711ed89787bd323736654", "user_id": + "2025-03-06T19:48:17.603Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_f1d6ebf0fac311efabc95d1fc5637621", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-16T22:15:46.399Z", "mode": "test", "object": "Event"}, {"description": - "batch.updated", "id": "evt_3114fc5cf43711ed92c01d9acf3b6d2f", "user_id": + "2025-03-06T19:48:15.473Z", "mode": "test", "object": "Event"}, {"description": + "batch.created", "id": "evt_f1bfadc8fac311efb6a71bb5e0cd2876", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-16T22:15:40.219Z", "mode": "test", "object": "Event"}, {"description": - "batch.created", "id": "evt_30fa3458f43711edb0a95dbb9ce80898", "user_id": + "2025-03-06T19:48:15.321Z", "mode": "test", "object": "Event"}, {"description": + "tracker.created", "id": "evt_ef360e3afac311ef9cf959235e992e6e", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": - "2023-05-16T22:15:40.043Z", "mode": "test", "object": "Event"}, {"description": - "batch.updated", "id": "evt_01cecac2f43711edbfcc39fdecca41c5", "user_id": - "user_54356a6b96c940d8913961a3c7b909f2", "status": "completed", "created_at": - "2023-05-16T22:14:20.906Z", "mode": "test", "object": "Event"}], "has_more": + "2025-03-06T19:48:11.063Z", "mode": "test", "object": "Event"}, {"description": + "batch.updated", "id": "evt_ee4610c4fac311ef9d366f1fec144160", "user_id": + "user_54356a6b96c940d8913961a3c7b909f2", "status": "pending", "created_at": + "2025-03-06T19:48:09.491Z", "mode": "test", "object": "Event"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '1110' + - '1112' content-type: - application/json; charset=utf-8 - etag: - - W/"43775f333ea34d7b38f91d698f05df34" expires: - '0' pragma: @@ -206,20 +200,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e064640097e789616600454db3 + - 8e8eb62867c9fc04e2b97ad500188e4d x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.262082' + - '0.289993' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -239,7 +233,7 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/events/evt_34dbac50f43711edba5907e39df03ec8/payloads/payload_11111111111111111111111111111111 + uri: https://api.easypost.com/v2/events/evt_f31be862fac311ef9aa4710dd2aee3b7/payloads/payload_11111111111111111111111111111111 response: body: string: '{"error": {"code": "PAYLOAD.NOT_FOUND", "message": "The payload(s) @@ -268,20 +262,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e064640098e789616600454dc9 + - 8e8eb62867c9fc04e2b97ad500188ea8 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.031689' + - '0.060967' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -303,7 +297,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/webhooks/hook_3499e3e2f43711edbb447565db124d54 + uri: https://api.easypost.com/v2/webhooks/hook_f19d25e6fac311efaf305b2397f4f7d3 response: body: string: '{}' @@ -314,8 +308,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -333,20 +325,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e064640098e789616600454dd4 + - 8e8eb62867c9fc04e2b97ad500188ecb x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.268077' + - '0.326402' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_insurance_all.yaml b/tests/cassettes/test_insurance_all.yaml index d078e1b9..2f873dba 100644 --- a/tests/cassettes/test_insurance_all.yaml +++ b/tests/cassettes/test_insurance_all.yaml @@ -16,11 +16,11 @@ interactions: uri: https://api.easypost.com/v2/insurances?page_size=5 response: body: - string: '{"insurances": [{"id": "ins_9490959cd728452b985e41c2a7e9e591", "object": + string: '{"insurances": [{"id": "ins_abffbc30c07f4bc0ba6fb8f36e4e7781", "object": "Insurance", "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": - "adr_a859ad85f34611edb81fac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T17:33:51+00:00", "updated_at": "2023-05-15T17:33:51+00:00", "name": + "adr_f6e8ef0dfac311efb10b3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:23+00:00", "updated_at": "2025-03-06T19:48:23+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -28,8 +28,8 @@ interactions: "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": - {"id": "adr_a85ee05af34611ed82ddac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T17:33:51+00:00", "updated_at": "2023-05-15T17:33:51+00:00", "name": + {"id": "adr_f6edb4d3fac311efb10f3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:24+00:00", "updated_at": "2025-03-06T19:48:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -37,26 +37,26 @@ interactions: {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, "shipment_id": null, "tracker": {"id": - "trk_2c76559389a844f2a36479b0a131e677", "object": "Tracker", "mode": "test", - "tracking_code": "9400100104262209986269", "status": "error", "status_detail": - null, "created_at": "2023-05-15T17:33:51Z", "updated_at": "2023-05-15T17:33:51Z", + "trk_bd61761988d5406e98a33971dd6a6000", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500706", "status": "error", "status_detail": + null, "created_at": "2025-03-06T19:48:24Z", "updated_at": "2025-03-06T19:48:24Z", "signed_by": null, "weight": null, "est_delivery_date": null, "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "In test mode, only test tracking numbers are valid. Test tracking numbers are EZ1000000001, EZ2000000002, ... , EZ7000000007", "description": - null, "status": "error", "status_detail": null, "datetime": "2023-05-15T17:33:51Z", - "source": "ProcessingError", "carrier_code": null, "tracking_location": {"object": + "", "status": "error", "status_detail": null, "datetime": "2025-03-06T19:48:24Z", + "source": "ProcessingError", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}], "carrier_detail": null, "finalized": true, "is_return": false, "public_url": - "https://track.easypost.com/djE6dHJrXzJjNzY1NTkzODlhODQ0ZjJhMzY0NzliMGExMzFlNjc3", - "fees": []}, "tracking_code": "9400100104262209986269", "fee": {"object": + "https://track.easypost.com/djE6dHJrX2JkNjE3NjE5ODhkNTQwNmU5OGEzMzk3MWRkNmE2MDAw", + "fees": []}, "tracking_code": "9400100208303109500706", "fee": {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": - false}, "messages": [], "created_at": "2023-05-15T17:33:51Z", "updated_at": - "2023-05-15T17:33:51Z"}, {"id": "ins_e60e5e24549648c78069269b3ade5e42", "object": + false}, "messages": [], "created_at": "2025-03-06T19:48:24Z", "updated_at": + "2025-03-06T19:48:24Z"}, {"id": "ins_dcf565145ccf4f04a8d820d810590ad5", "object": "Insurance", "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": - "adr_a93ebda3f34611edbb1c3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T17:33:53+00:00", "updated_at": "2023-05-15T17:33:53+00:00", "name": + "adr_f623d486fac311ef9523ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:22+00:00", "updated_at": "2025-03-06T19:48:22+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -64,8 +64,8 @@ interactions: "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": - {"id": "adr_a943c199f34611edbb203cecef1b359e", "object": "Address", "created_at": - "2023-05-15T17:33:53+00:00", "updated_at": "2023-05-15T17:33:53+00:00", "name": + {"id": "adr_f6289011fac311ef9526ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:22+00:00", "updated_at": "2025-03-06T19:48:22+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -73,31 +73,158 @@ interactions: {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, "shipment_id": null, "tracker": {"id": - "trk_8b28077df755477c92df4122d2797f73", "object": "Tracker", "mode": "test", - "tracking_code": "9400100104262209986283", "status": "error", "status_detail": - null, "created_at": "2023-05-15T17:33:53Z", "updated_at": "2023-05-15T17:33:53Z", + "trk_3bbaa4f95f5d452b89cb06e754d76351", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500690", "status": "error", "status_detail": + null, "created_at": "2025-03-06T19:48:22Z", "updated_at": "2025-03-06T19:48:22Z", "signed_by": null, "weight": null, "est_delivery_date": null, "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "In test mode, only test tracking numbers are valid. Test tracking numbers are EZ1000000001, EZ2000000002, ... , EZ7000000007", "description": - null, "status": "error", "status_detail": null, "datetime": "2023-05-15T17:33:53Z", - "source": "ProcessingError", "carrier_code": null, "tracking_location": {"object": + "", "status": "error", "status_detail": null, "datetime": "2025-03-06T19:48:22Z", + "source": "ProcessingError", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}], "carrier_detail": null, "finalized": true, "is_return": false, "public_url": - "https://track.easypost.com/djE6dHJrXzhiMjgwNzdkZjc1NTQ3N2M5MmRmNDEyMmQyNzk3Zjcz", - "fees": []}, "tracking_code": "9400100104262209986283", "fee": {"object": + "https://track.easypost.com/djE6dHJrXzNiYmFhNGY5NWY1ZDQ1MmI4OWNiMDZlNzU0ZDc2MzUx", + "fees": []}, "tracking_code": "9400100208303109500690", "fee": {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": - false}, "messages": [], "created_at": "2023-05-15T17:33:53Z", "updated_at": - "2023-05-15T17:33:53Z"}], "has_more": false}' + false}, "messages": [], "created_at": "2025-03-06T19:48:22Z", "updated_at": + "2025-03-06T19:48:22Z"}, {"id": "ins_229626a7af2f46c28f15547390291e82", "object": + "Insurance", "mode": "test", "reference": null, "status": "purchased", "amount": + "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": + "adr_e9c58fe5fac311ef8e57ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:02+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": + {"id": "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "tracker": {"id": + "trk_9ac363e1c15c4fc999d121ce98d362e7", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500683", "status": "pre_transit", "status_detail": + "status_update", "created_at": "2025-03-06T19:48:03Z", "updated_at": "2025-03-06T19:48:03Z", + "signed_by": null, "weight": null, "est_delivery_date": "2025-03-06T19:48:03Z", + "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:48:03Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:03Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzlhYzM2M2UxYzE1YzRmYzk5OWQxMjFjZTk4ZDM2MmU3", + "fees": []}, "tracking_code": "9400100208303109500683", "fee": {"object": + "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": + false}, "messages": [], "created_at": "2025-03-06T19:48:03Z", "updated_at": + "2025-03-06T19:48:03Z"}, {"id": "ins_7bcb457363834ebd88ba419138138fbc", "object": + "Insurance", "mode": "test", "reference": null, "status": "purchased", "amount": + "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": + "adr_e827fb21fac311efb3b0ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": + {"id": "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "tracker": {"id": + "trk_8df7c31984b84c2a87210b822c4fbd47", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500676", "status": "pre_transit", "status_detail": + "status_update", "created_at": "2025-03-06T19:48:00Z", "updated_at": "2025-03-06T19:48:00Z", + "signed_by": null, "weight": null, "est_delivery_date": "2025-03-06T19:48:00Z", + "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:48:00Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:00Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzhkZjdjMzE5ODRiODRjMmE4NzIxMGI4MjJjNGZiZDQ3", + "fees": []}, "tracking_code": "9400100208303109500676", "fee": {"object": + "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": + false}, "messages": [], "created_at": "2025-03-06T19:48:00Z", "updated_at": + "2025-03-06T19:48:00Z"}, {"id": "ins_029e06b218ab48e0979236191bb04df0", "object": + "Insurance", "mode": "test", "reference": null, "status": "purchased", "amount": + "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": + "adr_e6b48af8fac311efb2ebac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:57+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": + {"id": "adr_e6b764b2fac311efa8503cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "tracker": {"id": + "trk_adb09a892549448f92f26c83c20b412c", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500669", "status": "pre_transit", "status_detail": + "status_update", "created_at": "2025-03-06T19:47:57Z", "updated_at": "2025-03-06T19:47:57Z", + "signed_by": null, "weight": null, "est_delivery_date": "2025-03-06T19:47:57Z", + "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:47:57Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:24:57Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrX2FkYjA5YTg5MjU0OTQ0OGY5MmYyNmM4M2MyMGI0MTJj", + "fees": []}, "tracking_code": "9400100208303109500669", "fee": {"object": + "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": + false}, "messages": [], "created_at": "2025-03-06T19:47:57Z", "updated_at": + "2025-03-06T19:47:58Z"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '5355' + - '15168' content-type: - application/json; charset=utf-8 - etag: - - W/"36c367a5e230654b6e9af24383f83138" expires: - '0' pragma: @@ -115,20 +242,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495af64626d01e78744810020682e + - 8e8eb62a67c9fc08e2b97b180018936e x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.113227' + - '0.387014' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_insurance_create.yaml b/tests/cassettes/test_insurance_create.yaml index 3acdd35a..39ae8528 100644 --- a/tests/cassettes/test_insurance_create.yaml +++ b/tests/cassettes/test_insurance_create.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-15T17:33:50Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262209986269", "updated_at": "2023-05-15T17:33:51Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a7a292e5f34611edba4b3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T17:33:50+00:00", "updated_at": "2023-05-15T17:33:50+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_a2b0f7adb5d2479fa4f8d002ed1bf337", - "object": "Parcel", "created_at": "2023-05-15T17:33:50Z", "updated_at": "2023-05-15T17:33:50Z", + string: '{"id": "shp_8a45d2ce9594453d88f180d3df96d6c6", "created_at": "2025-03-06T19:48:21Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109500690", "updated_at": + "2025-03-06T19:48:22Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f599807ffac311ef94ecac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:21+00:00", "updated_at": + "2025-03-06T19:48:21+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_ea9b37bfd8d243788cb33af2706dc8c5", "object": + "Parcel", "created_at": "2025-03-06T19:48:21Z", "updated_at": "2025-03-06T19:48:21Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_88ddacc6ea954d43be0894e88282d642", - "created_at": "2023-05-15T17:33:50Z", "updated_at": "2023-05-15T17:33:51Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-15T17:33:50Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_e08e870243604e7f90514b038a80175a", + "created_at": "2025-03-06T19:48:22Z", "updated_at": "2025-03-06T19:48:22Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:22Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230515/58c4d8c4921a4f84b373c5d3032ea5c9.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e8d41ff089cb6e442fadd91067aa1cccf7.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_41917db5e0ca40e5aa884b433c7f76cd", "object": - "Rate", "created_at": "2023-05-15T17:33:50Z", "updated_at": "2023-05-15T17:33:50Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_ae6a9deef3164b13a091ec0c2059276b", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_bb39bb072d474cf88cb3f1589d4e2478", - "object": "Rate", "created_at": "2023-05-15T17:33:50Z", "updated_at": "2023-05-15T17:33:50Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_ae6a9deef3164b13a091ec0c2059276b", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_0f1dbd4d6a2f401b89d2baf799098500", - "object": "Rate", "created_at": "2023-05-15T17:33:50Z", "updated_at": "2023-05-15T17:33:50Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_ae6a9deef3164b13a091ec0c2059276b", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_03c501f1ad354215bf3c0ca53aee6d77", - "object": "Rate", "created_at": "2023-05-15T17:33:50Z", "updated_at": "2023-05-15T17:33:50Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ae6a9deef3164b13a091ec0c2059276b", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_03c501f1ad354215bf3c0ca53aee6d77", - "object": "Rate", "created_at": "2023-05-15T17:33:50Z", "updated_at": "2023-05-15T17:33:50Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ae6a9deef3164b13a091ec0c2059276b", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_4dde628b754e45f48451f4cf34dce13b", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262209986269", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-15T17:33:51Z", "updated_at": - "2023-05-15T17:33:51Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_ae6a9deef3164b13a091ec0c2059276b", "carrier": "USPS", + null}, "rates": [{"id": "rate_7d5084b5455a48c796475edd6ad992a4", "object": + "Rate", "created_at": "2025-03-06T19:48:21Z", "updated_at": "2025-03-06T19:48:21Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_8a45d2ce9594453d88f180d3df96d6c6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_47966bba614d40cba9ae81e9dc4f9008", + "object": "Rate", "created_at": "2025-03-06T19:48:21Z", "updated_at": "2025-03-06T19:48:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_8a45d2ce9594453d88f180d3df96d6c6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d5c528ef383449648a320dbc3b149f23", + "object": "Rate", "created_at": "2025-03-06T19:48:21Z", "updated_at": "2025-03-06T19:48:21Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_8a45d2ce9594453d88f180d3df96d6c6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_47966bba614d40cba9ae81e9dc4f9008", "object": + "Rate", "created_at": "2025-03-06T19:48:22Z", "updated_at": "2025-03-06T19:48:22Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_8a45d2ce9594453d88f180d3df96d6c6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_1fae64692f0c4b458ff0262243df9452", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500690", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:48:22Z", + "updated_at": "2025-03-06T19:48:22Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_8a45d2ce9594453d88f180d3df96d6c6", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzRkZGU2MjhiNzU0ZTQ1ZjQ4NDUxZjRjZjM0ZGNlMTNi"}, - "to_address": {"id": "adr_a7a0b95ef34611edaa53ac1f6bc72124", "object": "Address", - "created_at": "2023-05-15T17:33:50+00:00", "updated_at": "2023-05-15T17:33:50+00:00", + "https://track.easypost.com/djE6dHJrXzFmYWU2NDY5MmYwYzRiNDU4ZmYwMjYyMjQzZGY5NDUy"}, + "to_address": {"id": "adr_f596f29efac311ef94ebac1f6bc53342", "object": "Address", + "created_at": "2025-03-06T19:48:21+00:00", "updated_at": "2025-03-06T19:48:21+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_a7a292e5f34611edba4b3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T17:33:50+00:00", "updated_at": - "2023-05-15T17:33:50+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_f599807ffac311ef94ecac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:21+00:00", "updated_at": + "2025-03-06T19:48:21+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_a7a0b95ef34611edaa53ac1f6bc72124", "object": "Address", "created_at": - "2023-05-15T17:33:50+00:00", "updated_at": "2023-05-15T17:33:50+00:00", "name": + "adr_f596f29efac311ef94ebac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:21+00:00", "updated_at": "2025-03-06T19:48:21+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_ae6a9deef3164b13a091ec0c2059276b", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"b3be0c9cbdef087d8dd20f4cfd16c187" expires: - '0' location: - - /api/v2/shipments/shp_ae6a9deef3164b13a091ec0c2059276b + - /api/v2/shipments/shp_8a45d2ce9594453d88f180d3df96d6c6 pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b364626cfee787447f002066bf + - 8e8eb62b67c9fc05e2b97b1600188fef x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '1.028327' + - '0.795592' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -172,7 +164,7 @@ interactions: "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "carrier": "USPS", "amount": "100", "tracking_code": - "9400100104262209986269"}}' + "9400100208303109500690"}}' headers: Accept: - '*/*' @@ -192,39 +184,39 @@ interactions: uri: https://api.easypost.com/v2/insurances response: body: - string: '{"id": "ins_9490959cd728452b985e41c2a7e9e591", "object": "Insurance", + string: '{"id": "ins_dcf565145ccf4f04a8d820d810590ad5", "object": "Insurance", "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", - "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_a859ad85f34611edb81fac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T17:33:51+00:00", "updated_at": - "2023-05-15T17:33:51+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": - "179 N HARBOR DR", "street2": "", "city": "REDONDO BEACH", "state": "CA", + "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_f623d486fac311ef9523ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:22+00:00", "updated_at": + "2025-03-06T19:48:22+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": + "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, - "from_address": {"id": "adr_a85ee05af34611ed82ddac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-15T17:33:51+00:00", "updated_at": "2023-05-15T17:33:51+00:00", + "from_address": {"id": "adr_f6289011fac311ef9526ac1f6bc53342", "object": "Address", + "created_at": "2025-03-06T19:48:22+00:00", "updated_at": "2025-03-06T19:48:22+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "shipment_id": null, "tracker": {"id": "trk_4dde628b754e45f48451f4cf34dce13b", - "object": "Tracker", "mode": "test", "tracking_code": "9400100104262209986269", - "status": "pre_transit", "status_detail": "status_update", "created_at": "2023-05-15T17:33:51Z", - "updated_at": "2023-05-15T17:33:51Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-15T17:33:51Z", "shipment_id": "shp_ae6a9deef3164b13a091ec0c2059276b", + "shipment_id": null, "tracker": {"id": "trk_1fae64692f0c4b458ff0262243df9452", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500690", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:22Z", + "updated_at": "2025-03-06T19:48:22Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:22Z", "shipment_id": "shp_8a45d2ce9594453d88f180d3df96d6c6", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-15T17:33:51Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:22Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T06:10:51Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:22Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": @@ -232,24 +224,22 @@ interactions: "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": - true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzRkZGU2MjhiNzU0ZTQ1ZjQ4NDUxZjRjZjM0ZGNlMTNi", - "fees": []}, "tracking_code": "9400100104262209986269", "fee": {"object": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzFmYWU2NDY5MmYwYzRiNDU4ZmYwMjYyMjQzZGY5NDUy", + "fees": []}, "tracking_code": "9400100208303109500690", "fee": {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": - false}, "messages": [], "created_at": "2023-05-15T17:33:51Z", "updated_at": - "2023-05-15T17:33:51Z"}' + false}, "messages": [], "created_at": "2025-03-06T19:48:22Z", "updated_at": + "2025-03-06T19:48:22Z"}' headers: cache-control: - private, no-cache, no-store content-length: - - '3428' + - '3424' content-type: - application/json; charset=utf-8 - etag: - - W/"05ae98731482eb64a8f6875068ec6e24" expires: - '0' location: - - /api/v2/insurances/ins_9490959cd728452b985e41c2a7e9e591 + - /api/v2/insurances/ins_dcf565145ccf4f04a8d820d810590ad5 pragma: - no-cache referrer-policy: @@ -265,20 +255,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b364626cffe787447f00206726 + - 8e8eb62b67c9fc06e2b97b16001890fb x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.255881' + - '0.329239' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_insurance_get_next_page.yaml b/tests/cassettes/test_insurance_get_next_page.yaml index fee76df9..4c2d28b9 100644 --- a/tests/cassettes/test_insurance_get_next_page.yaml +++ b/tests/cassettes/test_insurance_get_next_page.yaml @@ -16,11 +16,11 @@ interactions: uri: https://api.easypost.com/v2/insurances?page_size=5 response: body: - string: '{"insurances": [{"id": "ins_9490959cd728452b985e41c2a7e9e591", "object": + string: '{"insurances": [{"id": "ins_abffbc30c07f4bc0ba6fb8f36e4e7781", "object": "Insurance", "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": - "adr_a859ad85f34611edb81fac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T17:33:51+00:00", "updated_at": "2023-05-15T17:33:51+00:00", "name": + "adr_f6e8ef0dfac311efb10b3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:23+00:00", "updated_at": "2025-03-06T19:48:23+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -28,8 +28,8 @@ interactions: "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": - {"id": "adr_a85ee05af34611ed82ddac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T17:33:51+00:00", "updated_at": "2023-05-15T17:33:51+00:00", "name": + {"id": "adr_f6edb4d3fac311efb10f3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:24+00:00", "updated_at": "2025-03-06T19:48:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -37,26 +37,26 @@ interactions: {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, "shipment_id": null, "tracker": {"id": - "trk_2c76559389a844f2a36479b0a131e677", "object": "Tracker", "mode": "test", - "tracking_code": "9400100104262209986269", "status": "error", "status_detail": - null, "created_at": "2023-05-15T17:33:51Z", "updated_at": "2023-05-15T17:33:51Z", + "trk_bd61761988d5406e98a33971dd6a6000", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500706", "status": "error", "status_detail": + null, "created_at": "2025-03-06T19:48:24Z", "updated_at": "2025-03-06T19:48:24Z", "signed_by": null, "weight": null, "est_delivery_date": null, "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "In test mode, only test tracking numbers are valid. Test tracking numbers are EZ1000000001, EZ2000000002, ... , EZ7000000007", "description": - null, "status": "error", "status_detail": null, "datetime": "2023-05-15T17:33:51Z", - "source": "ProcessingError", "carrier_code": null, "tracking_location": {"object": + "", "status": "error", "status_detail": null, "datetime": "2025-03-06T19:48:24Z", + "source": "ProcessingError", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}], "carrier_detail": null, "finalized": true, "is_return": false, "public_url": - "https://track.easypost.com/djE6dHJrXzJjNzY1NTkzODlhODQ0ZjJhMzY0NzliMGExMzFlNjc3", - "fees": []}, "tracking_code": "9400100104262209986269", "fee": {"object": + "https://track.easypost.com/djE6dHJrX2JkNjE3NjE5ODhkNTQwNmU5OGEzMzk3MWRkNmE2MDAw", + "fees": []}, "tracking_code": "9400100208303109500706", "fee": {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": - false}, "messages": [], "created_at": "2023-05-15T17:33:51Z", "updated_at": - "2023-05-15T17:33:51Z"}, {"id": "ins_e60e5e24549648c78069269b3ade5e42", "object": + false}, "messages": [], "created_at": "2025-03-06T19:48:24Z", "updated_at": + "2025-03-06T19:48:24Z"}, {"id": "ins_dcf565145ccf4f04a8d820d810590ad5", "object": "Insurance", "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": - "adr_a93ebda3f34611edbb1c3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T17:33:53+00:00", "updated_at": "2023-05-15T17:33:53+00:00", "name": + "adr_f623d486fac311ef9523ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:22+00:00", "updated_at": "2025-03-06T19:48:22+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -64,8 +64,8 @@ interactions: "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": - {"id": "adr_a943c199f34611edbb203cecef1b359e", "object": "Address", "created_at": - "2023-05-15T17:33:53+00:00", "updated_at": "2023-05-15T17:33:53+00:00", "name": + {"id": "adr_f6289011fac311ef9526ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:22+00:00", "updated_at": "2025-03-06T19:48:22+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -73,31 +73,289 @@ interactions: {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, "shipment_id": null, "tracker": {"id": - "trk_8b28077df755477c92df4122d2797f73", "object": "Tracker", "mode": "test", - "tracking_code": "9400100104262209986283", "status": "error", "status_detail": - null, "created_at": "2023-05-15T17:33:53Z", "updated_at": "2023-05-15T17:33:53Z", + "trk_3bbaa4f95f5d452b89cb06e754d76351", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500690", "status": "error", "status_detail": + null, "created_at": "2025-03-06T19:48:22Z", "updated_at": "2025-03-06T19:48:22Z", "signed_by": null, "weight": null, "est_delivery_date": null, "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "In test mode, only test tracking numbers are valid. Test tracking numbers are EZ1000000001, EZ2000000002, ... , EZ7000000007", "description": - null, "status": "error", "status_detail": null, "datetime": "2023-05-15T17:33:53Z", - "source": "ProcessingError", "carrier_code": null, "tracking_location": {"object": + "", "status": "error", "status_detail": null, "datetime": "2025-03-06T19:48:22Z", + "source": "ProcessingError", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}], "carrier_detail": null, "finalized": true, "is_return": false, "public_url": - "https://track.easypost.com/djE6dHJrXzhiMjgwNzdkZjc1NTQ3N2M5MmRmNDEyMmQyNzk3Zjcz", - "fees": []}, "tracking_code": "9400100104262209986283", "fee": {"object": + "https://track.easypost.com/djE6dHJrXzNiYmFhNGY5NWY1ZDQ1MmI4OWNiMDZlNzU0ZDc2MzUx", + "fees": []}, "tracking_code": "9400100208303109500690", "fee": {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": - false}, "messages": [], "created_at": "2023-05-15T17:33:53Z", "updated_at": - "2023-05-15T17:33:53Z"}], "has_more": false}' + false}, "messages": [], "created_at": "2025-03-06T19:48:22Z", "updated_at": + "2025-03-06T19:48:22Z"}, {"id": "ins_229626a7af2f46c28f15547390291e82", "object": + "Insurance", "mode": "test", "reference": null, "status": "purchased", "amount": + "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": + "adr_e9c58fe5fac311ef8e57ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:02+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": + {"id": "adr_e9c82d93fac311efb46dac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:01+00:00", "updated_at": "2025-03-06T19:48:01+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "tracker": {"id": + "trk_9ac363e1c15c4fc999d121ce98d362e7", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500683", "status": "pre_transit", "status_detail": + "status_update", "created_at": "2025-03-06T19:48:03Z", "updated_at": "2025-03-06T19:48:03Z", + "signed_by": null, "weight": null, "est_delivery_date": "2025-03-06T19:48:03Z", + "shipment_id": "shp_0ea044af2a4a491e953233cd7867bb6a", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:48:03Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:03Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzlhYzM2M2UxYzE1YzRmYzk5OWQxMjFjZTk4ZDM2MmU3", + "fees": []}, "tracking_code": "9400100208303109500683", "fee": {"object": + "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": + false}, "messages": [], "created_at": "2025-03-06T19:48:03Z", "updated_at": + "2025-03-06T19:48:03Z"}, {"id": "ins_7bcb457363834ebd88ba419138138fbc", "object": + "Insurance", "mode": "test", "reference": null, "status": "purchased", "amount": + "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": + "adr_e827fb21fac311efb3b0ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": + {"id": "adr_e82a4736fac311ef8d72ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:47:59+00:00", "updated_at": "2025-03-06T19:47:59+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "tracker": {"id": + "trk_8df7c31984b84c2a87210b822c4fbd47", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500676", "status": "pre_transit", "status_detail": + "status_update", "created_at": "2025-03-06T19:48:00Z", "updated_at": "2025-03-06T19:48:00Z", + "signed_by": null, "weight": null, "est_delivery_date": "2025-03-06T19:48:00Z", + "shipment_id": "shp_1bb0f57e60d6448b84a94a9e120629bf", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:48:00Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:00Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzhkZjdjMzE5ODRiODRjMmE4NzIxMGI4MjJjNGZiZDQ3", + "fees": []}, "tracking_code": "9400100208303109500676", "fee": {"object": + "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": + false}, "messages": [], "created_at": "2025-03-06T19:48:00Z", "updated_at": + "2025-03-06T19:48:00Z"}, {"id": "ins_029e06b218ab48e0979236191bb04df0", "object": + "Insurance", "mode": "test", "reference": null, "status": "purchased", "amount": + "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": + "adr_e6b48af8fac311efb2ebac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:57+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": + {"id": "adr_e6b764b2fac311efa8503cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:47:56+00:00", "updated_at": "2025-03-06T19:47:56+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "tracker": {"id": + "trk_adb09a892549448f92f26c83c20b412c", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208303109500669", "status": "pre_transit", "status_detail": + "status_update", "created_at": "2025-03-06T19:47:57Z", "updated_at": "2025-03-06T19:47:57Z", + "signed_by": null, "weight": null, "est_delivery_date": "2025-03-06T19:47:57Z", + "shipment_id": "shp_5ee01eb89ffc456fa9cdc82cb03c7f8e", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:47:57Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:24:57Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrX2FkYjA5YTg5MjU0OTQ0OGY5MmYyNmM4M2MyMGI0MTJj", + "fees": []}, "tracking_code": "9400100208303109500669", "fee": {"object": + "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": + false}, "messages": [], "created_at": "2025-03-06T19:47:57Z", "updated_at": + "2025-03-06T19:47:58Z"}], "has_more": true}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '15168' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fc09e2b97b3000189404 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb40nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.336949' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/insurances?before_id=ins_029e06b218ab48e0979236191bb04df0&page_size=5 + response: + body: + string: '{"insurances": [{"id": "ins_730ae2cc418147938bfcac3e49ed1665", "object": + "Insurance", "mode": "test", "reference": null, "status": "purchased", "amount": + "100.00000", "provider": "easypost", "provider_id": null, "to_address": {"id": + "adr_fab8798ef08111ef8ca73cecef1b359e", "object": "Address", "created_at": + "2025-02-21T18:30:51+00:00", "updated_at": "2025-02-21T18:30:52+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "from_address": + {"id": "adr_fabb4013f08111efacb8ac1f6bc53342", "object": "Address", "created_at": + "2025-02-21T18:30:51+00:00", "updated_at": "2025-02-21T18:30:51+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipment_id": "shp_bfb151c83dbf4a8c97a494074041c11f", "tracker": {"id": + "trk_8f86b00bbc1140f6b0cbaee6701b9f57", "object": "Tracker", "mode": "test", + "tracking_code": "9400100208271116404754", "status": "delivered", "status_detail": + "arrived_at_destination", "created_at": "2025-02-21T18:30:52Z", "updated_at": + "2025-02-21T18:33:53Z", "signed_by": "John Tester", "weight": null, "est_delivery_date": + "2025-02-21T18:33:53Z", "shipment_id": "shp_bfb151c83dbf4a8c97a494074041c11f", + "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-01-21T18:33:53Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-01-22T07:10:53Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": + "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": + "", "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": + "2025-01-22T17:15:53Z", "source": "USPS", "carrier_code": "", "tracking_location": + {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": + null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at + USPS Facility", "description": "", "status": "in_transit", "status_detail": + "arrived_at_facility", "datetime": "2025-01-23T18:51:53Z", "source": "USPS", + "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": + "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": "TrackingDetail", + "message": "Arrived at Post Office", "description": "", "status": "in_transit", + "status_detail": "arrived_at_facility", "datetime": "2025-01-23T21:42:53Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Sorting Complete", "description": "", "status": + "in_transit", "status_detail": "status_update", "datetime": "2025-01-24T03:22:53Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Out for Delivery", "description": "", "status": + "out_for_delivery", "status_detail": "out_for_delivery", "datetime": "2025-01-24T03:32:53Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Delivered", "description": "", "status": "delivered", + "status_detail": "arrived_at_destination", "datetime": "2025-01-24T08:24:53Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "carrier_detail": + {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "NORTH HOUSTON", "state": "TX", "country": null, "zip": "77315"}, + "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": + null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": + null, "initial_delivery_attempt": "2025-01-24T08:24:53Z"}, "finalized": true, + "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzhmODZiMDBiYmMxMTQwZjZiMGNiYWVlNjcwMWI5ZjU3", + "fees": []}, "tracking_code": "9400100208271116404754", "fee": {"object": + "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": + false}, "messages": [], "created_at": "2025-02-21T18:30:53Z", "updated_at": + "2025-02-21T18:30:53Z"}], "has_more": false}' headers: cache-control: - private, no-cache, no-store content-length: - - '5355' + - '5340' content-type: - application/json; charset=utf-8 - etag: - - W/"36c367a5e230654b6e9af24383f83138" expires: - '0' pragma: @@ -115,20 +373,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b164626d02e787448200206856 + - 8e8eb62c67c9fc09e2b97b3000189484 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.103378' + - '0.156883' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_insurance_refund.yaml b/tests/cassettes/test_insurance_refund.yaml new file mode 100644 index 00000000..3ea940a7 --- /dev/null +++ b/tests/cassettes/test_insurance_refund.yaml @@ -0,0 +1,227 @@ +interactions: +- request: + body: '{"insurance": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "carrier": "USPS", "amount": "100", "tracking_code": + "EZ1000000001"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '499' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/insurances + response: + body: + string: '{"id": "ins_f6a6de2a893f4b55b3e33affa43ff738", "object": "Insurance", + "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", + "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_f7ff9b21fac311ef90e8ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:48:25+00:00", "updated_at": + "2025-03-06T19:48:25+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": + "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", + "zip": "90277-2506", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": + null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": + [], "details": null}, "delivery": {"success": true, "errors": [], "details": + {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, + "from_address": {"id": "adr_f8047801fac311efb1c63cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:25+00:00", "updated_at": "2025-03-06T19:48:25+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "shipment_id": null, "tracker": {"id": "trk_d60c22ff15a9476e932b86162d25a191", + "object": "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": + "pre_transit", "status_detail": "status_update", "created_at": "2024-09-27T17:59:00Z", + "updated_at": "2024-09-27T17:59:00Z", "signed_by": null, "weight": null, "est_delivery_date": + "2024-09-27T17:59:00Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", + "description": "", "status": "pre_transit", "status_detail": "status_update", + "datetime": "2024-08-27T17:59:00Z", "source": "USPS", "carrier_code": "", + "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2024-08-28T06:36:00Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrX2Q2MGMyMmZmMTVhOTQ3NmU5MzJiODYxNjJkMjVhMTkx", + "fees": []}, "tracking_code": "EZ1000000001", "fee": {"object": "Fee", "type": + "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": false}, + "messages": [], "created_at": "2025-03-06T19:48:25Z", "updated_at": "2025-03-06T19:48:26Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '3370' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/insurances/ins_f6a6de2a893f4b55b3e33affa43ff738 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fc09e2b97b31001894eb + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb58nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.395640' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/insurances/ins_f6a6de2a893f4b55b3e33affa43ff738/refund + response: + body: + string: '{"id": "ins_f6a6de2a893f4b55b3e33affa43ff738", "object": "Insurance", + "mode": "test", "reference": null, "status": "cancelled", "amount": "100.00000", + "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_f7ff9b21fac311ef90e8ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:48:25+00:00", "updated_at": + "2025-03-06T19:48:25+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": + "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", + "zip": "90277-2506", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": + null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": + [], "details": null}, "delivery": {"success": true, "errors": [], "details": + {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, + "from_address": {"id": "adr_f8047801fac311efb1c63cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:25+00:00", "updated_at": "2025-03-06T19:48:25+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "shipment_id": null, "tracker": {"id": "trk_e7e8f143f3eb40d38be9562e3767c36a", + "object": "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": + "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:26Z", + "updated_at": "2025-03-06T19:48:26Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:26Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", + "description": "", "status": "pre_transit", "status_detail": "status_update", + "datetime": "2025-02-06T19:48:26Z", "source": "USPS", "carrier_code": "", + "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:26Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": + "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrX2U3ZThmMTQzZjNlYjQwZDM4YmU5NTYyZTM3NjdjMzZh", + "fees": []}, "tracking_code": "EZ1000000001", "fee": {"object": "Fee", "type": + "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": false}, + "messages": ["Insurance was cancelled by the user."], "created_at": "2025-03-06T19:48:25Z", + "updated_at": "2025-03-06T19:48:26Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '3420' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fc0ae2b97b3100189576 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb39nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.222910' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_insurance_retrieve.yaml b/tests/cassettes/test_insurance_retrieve.yaml index 56f012da..72c58ad5 100644 --- a/tests/cassettes/test_insurance_retrieve.yaml +++ b/tests/cassettes/test_insurance_retrieve.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-15T17:33:52Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262209986283", "updated_at": "2023-05-15T17:33:52Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a89a30a5f34611ed82f7ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T17:33:52+00:00", "updated_at": "2023-05-15T17:33:52+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_bc4117cf408a4b4ca0c703b954fb32d4", - "object": "Parcel", "created_at": "2023-05-15T17:33:52Z", "updated_at": "2023-05-15T17:33:52Z", + string: '{"id": "shp_e938c6e639aa496882e7307b678a4802", "created_at": "2025-03-06T19:48:23Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109500706", "updated_at": + "2025-03-06T19:48:23Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f65cbaa7fac311efb0bf3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:23+00:00", "updated_at": + "2025-03-06T19:48:23+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_e0018b3a823d4cc09985933e9a745a7d", "object": + "Parcel", "created_at": "2025-03-06T19:48:23Z", "updated_at": "2025-03-06T19:48:23Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_624cd66a325e444697fafe3331035a90", - "created_at": "2023-05-15T17:33:52Z", "updated_at": "2023-05-15T17:33:52Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-15T17:33:52Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_bc926188388d48af86cbb55033766bcb", + "created_at": "2025-03-06T19:48:23Z", "updated_at": "2025-03-06T19:48:23Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:23Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230515/525e4859777347f5abbb7b8bc1cc6540.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e87cc2ac984a6f4e2aae8a38cc61a289b6.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_1c1ec814812742beb8b5ac2a1e071ee4", "object": - "Rate", "created_at": "2023-05-15T17:33:52Z", "updated_at": "2023-05-15T17:33:52Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_6887a83cb31044d098c08710ba7624b6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f0c0d52b0e624c4ca1a5df9e8ca04b0b", - "object": "Rate", "created_at": "2023-05-15T17:33:52Z", "updated_at": "2023-05-15T17:33:52Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_6887a83cb31044d098c08710ba7624b6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_36919ce86bed42f5bccd958f102c09b4", - "object": "Rate", "created_at": "2023-05-15T17:33:52Z", "updated_at": "2023-05-15T17:33:52Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_6887a83cb31044d098c08710ba7624b6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f47f05c0d36e4568b3a02ec5c97c13bf", - "object": "Rate", "created_at": "2023-05-15T17:33:52Z", "updated_at": "2023-05-15T17:33:52Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6887a83cb31044d098c08710ba7624b6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_f47f05c0d36e4568b3a02ec5c97c13bf", - "object": "Rate", "created_at": "2023-05-15T17:33:52Z", "updated_at": "2023-05-15T17:33:52Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6887a83cb31044d098c08710ba7624b6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_0bc209b0f7224a94a8b1fe55407d0ba9", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262209986283", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-15T17:33:52Z", "updated_at": - "2023-05-15T17:33:52Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_6887a83cb31044d098c08710ba7624b6", "carrier": "USPS", + null}, "rates": [{"id": "rate_516cdc16d5984fc0baece745d0948549", "object": + "Rate", "created_at": "2025-03-06T19:48:23Z", "updated_at": "2025-03-06T19:48:23Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_e938c6e639aa496882e7307b678a4802", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_877e3e57cb3c4c75ac351197b11b256a", + "object": "Rate", "created_at": "2025-03-06T19:48:23Z", "updated_at": "2025-03-06T19:48:23Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_e938c6e639aa496882e7307b678a4802", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_01aab7b48e4e4980adbb677c6f392de7", + "object": "Rate", "created_at": "2025-03-06T19:48:23Z", "updated_at": "2025-03-06T19:48:23Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_e938c6e639aa496882e7307b678a4802", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_877e3e57cb3c4c75ac351197b11b256a", "object": + "Rate", "created_at": "2025-03-06T19:48:23Z", "updated_at": "2025-03-06T19:48:23Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_e938c6e639aa496882e7307b678a4802", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_58d8cf77ce934a34ae4e28fde5798683", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500706", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:48:23Z", + "updated_at": "2025-03-06T19:48:23Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_e938c6e639aa496882e7307b678a4802", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzBiYzIwOWIwZjcyMjRhOTRhOGIxZmU1NTQwN2QwYmE5"}, - "to_address": {"id": "adr_a897b726f34611edaae1ac1f6bc72124", "object": "Address", - "created_at": "2023-05-15T17:33:52+00:00", "updated_at": "2023-05-15T17:33:52+00:00", + "https://track.easypost.com/djE6dHJrXzU4ZDhjZjc3Y2U5MzRhMzRhZTRlMjhmZGU1Nzk4Njgz"}, + "to_address": {"id": "adr_f65ac07ffac311efb0be3cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:23+00:00", "updated_at": "2025-03-06T19:48:23+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_a89a30a5f34611ed82f7ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-15T17:33:52+00:00", "updated_at": - "2023-05-15T17:33:52+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_f65cbaa7fac311efb0bf3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:23+00:00", "updated_at": + "2025-03-06T19:48:23+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_a897b726f34611edaae1ac1f6bc72124", "object": "Address", "created_at": - "2023-05-15T17:33:52+00:00", "updated_at": "2023-05-15T17:33:52+00:00", "name": + "adr_f65ac07ffac311efb0be3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:23+00:00", "updated_at": "2025-03-06T19:48:23+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_6887a83cb31044d098c08710ba7624b6", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"8647c5e4f5d237760199e0d5cf4d858c" expires: - '0' location: - - /api/v2/shipments/shp_6887a83cb31044d098c08710ba7624b6 + - /api/v2/shipments/shp_e938c6e639aa496882e7307b678a4802 pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b064626cffe78744800020676b + - 8e8eb62867c9fc07e2b97b1700189198 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.989256' + - '0.825699' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -172,7 +164,7 @@ interactions: "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "carrier": "USPS", "amount": "100", "tracking_code": - "9400100104262209986283"}}' + "9400100208303109500706"}}' headers: Accept: - '*/*' @@ -192,39 +184,39 @@ interactions: uri: https://api.easypost.com/v2/insurances response: body: - string: '{"id": "ins_e60e5e24549648c78069269b3ade5e42", "object": "Insurance", + string: '{"id": "ins_abffbc30c07f4bc0ba6fb8f36e4e7781", "object": "Insurance", "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", - "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_a93ebda3f34611edbb1c3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T17:33:53+00:00", "updated_at": - "2023-05-15T17:33:53+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": - "179 N HARBOR DR", "street2": "", "city": "REDONDO BEACH", "state": "CA", + "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_f6e8ef0dfac311efb10b3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:23+00:00", "updated_at": + "2025-03-06T19:48:23+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": + "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, - "from_address": {"id": "adr_a943c199f34611edbb203cecef1b359e", "object": "Address", - "created_at": "2023-05-15T17:33:53+00:00", "updated_at": "2023-05-15T17:33:53+00:00", + "from_address": {"id": "adr_f6edb4d3fac311efb10f3cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:24+00:00", "updated_at": "2025-03-06T19:48:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "shipment_id": null, "tracker": {"id": "trk_0bc209b0f7224a94a8b1fe55407d0ba9", - "object": "Tracker", "mode": "test", "tracking_code": "9400100104262209986283", - "status": "pre_transit", "status_detail": "status_update", "created_at": "2023-05-15T17:33:53Z", - "updated_at": "2023-05-15T17:33:53Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-15T17:33:53Z", "shipment_id": "shp_6887a83cb31044d098c08710ba7624b6", + "shipment_id": null, "tracker": {"id": "trk_58d8cf77ce934a34ae4e28fde5798683", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500706", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:23Z", + "updated_at": "2025-03-06T19:48:23Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:23Z", "shipment_id": "shp_e938c6e639aa496882e7307b678a4802", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-15T17:33:53Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:23Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T06:10:53Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:23Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": @@ -232,24 +224,22 @@ interactions: "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": - true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzBiYzIwOWIwZjcyMjRhOTRhOGIxZmU1NTQwN2QwYmE5", - "fees": []}, "tracking_code": "9400100104262209986283", "fee": {"object": + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzU4ZDhjZjc3Y2U5MzRhMzRhZTRlMjhmZGU1Nzk4Njgz", + "fees": []}, "tracking_code": "9400100208303109500706", "fee": {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": - false}, "messages": [], "created_at": "2023-05-15T17:33:53Z", "updated_at": - "2023-05-15T17:33:53Z"}' + false}, "messages": [], "created_at": "2025-03-06T19:48:24Z", "updated_at": + "2025-03-06T19:48:24Z"}' headers: cache-control: - private, no-cache, no-store content-length: - - '3428' + - '3424' content-type: - application/json; charset=utf-8 - etag: - - W/"8f4917270bd320faab73ff3f58e1a8ad" expires: - '0' location: - - /api/v2/insurances/ins_e60e5e24549648c78069269b3ade5e42 + - /api/v2/insurances/ins_abffbc30c07f4bc0ba6fb8f36e4e7781 pragma: - no-cache referrer-policy: @@ -265,20 +255,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b064626d01e7874480002067da + - 8e8eb62867c9fc07e2b97b17001892ad x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.169373' + - '0.303280' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -298,22 +288,22 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/insurances/ins_e60e5e24549648c78069269b3ade5e42 + uri: https://api.easypost.com/v2/insurances/ins_abffbc30c07f4bc0ba6fb8f36e4e7781 response: body: - string: '{"id": "ins_e60e5e24549648c78069269b3ade5e42", "object": "Insurance", + string: '{"id": "ins_abffbc30c07f4bc0ba6fb8f36e4e7781", "object": "Insurance", "mode": "test", "reference": null, "status": "pending", "amount": "100.00000", - "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_a93ebda3f34611edbb1c3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T17:33:53+00:00", "updated_at": - "2023-05-15T17:33:53+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": + "provider": "easypost", "provider_id": null, "to_address": {"id": "adr_f6e8ef0dfac311efb10b3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:23+00:00", "updated_at": + "2025-03-06T19:48:23+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, - "from_address": {"id": "adr_a943c199f34611edbb203cecef1b359e", "object": "Address", - "created_at": "2023-05-15T17:33:53+00:00", "updated_at": "2023-05-15T17:33:53+00:00", + "from_address": {"id": "adr_f6edb4d3fac311efb10f3cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:24+00:00", "updated_at": "2025-03-06T19:48:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -321,31 +311,29 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "shipment_id": null, "tracker": {"id": "trk_8b28077df755477c92df4122d2797f73", - "object": "Tracker", "mode": "test", "tracking_code": "9400100104262209986283", - "status": "error", "status_detail": null, "created_at": "2023-05-15T17:33:53Z", - "updated_at": "2023-05-15T17:33:53Z", "signed_by": null, "weight": null, "est_delivery_date": + "shipment_id": null, "tracker": {"id": "trk_bd61761988d5406e98a33971dd6a6000", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500706", + "status": "error", "status_detail": null, "created_at": "2025-03-06T19:48:24Z", + "updated_at": "2025-03-06T19:48:24Z", "signed_by": null, "weight": null, "est_delivery_date": null, "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "In test mode, only test tracking numbers are valid. Test tracking numbers are EZ1000000001, EZ2000000002, ... , EZ7000000007", - "description": null, "status": "error", "status_detail": null, "datetime": - "2023-05-15T17:33:53Z", "source": "ProcessingError", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": null, "state": - null, "country": null, "zip": null}}], "carrier_detail": null, "finalized": - true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzhiMjgwNzdkZjc1NTQ3N2M5MmRmNDEyMmQyNzk3Zjcz", - "fees": []}, "tracking_code": "9400100104262209986283", "fee": {"object": + "description": "", "status": "error", "status_detail": null, "datetime": "2025-03-06T19:48:24Z", + "source": "ProcessingError", "carrier_code": "", "tracking_location": {"object": + "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}], + "carrier_detail": null, "finalized": true, "is_return": false, "public_url": + "https://track.easypost.com/djE6dHJrX2JkNjE3NjE5ODhkNTQwNmU5OGEzMzk3MWRkNmE2MDAw", + "fees": []}, "tracking_code": "9400100208303109500706", "fee": {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", "charged": true, "refunded": - false}, "messages": [], "created_at": "2023-05-15T17:33:53Z", "updated_at": - "2023-05-15T17:33:53Z"}' + false}, "messages": [], "created_at": "2025-03-06T19:48:24Z", "updated_at": + "2025-03-06T19:48:24Z"}' headers: cache-control: - private, no-cache, no-store content-length: - - '2660' + - '2666' content-type: - application/json; charset=utf-8 - etag: - - W/"a3211c88d72968be07a3122c90b5e041" expires: - '0' pragma: @@ -363,20 +351,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b064626d01e78744800020680d + - 8e8eb62867c9fc08e2b97b170018931b x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.074946' + - '0.124133' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_luma_get_promise.yaml b/tests/cassettes/test_luma_get_promise.yaml new file mode 100644 index 00000000..ef49e4f1 --- /dev/null +++ b/tests/cassettes/test_luma_get_promise.yaml @@ -0,0 +1,84 @@ +interactions: +- request: + body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}, "ruleset_name": "cheapest_delivery", "planned_ship_date": "2025-06-12"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '568' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/luma/promise + response: + body: + string: '{"luma_info": {"ai_results": [{"carrier": "USPS", "meets_ruleset_requirements": + true, "predicted_deliver_by_date": "2025-06-14", "predicted_deliver_days": + 2, "rate_usd": "7.42", "service": "Priority"}, {"carrier": "USPS", "meets_ruleset_requirements": + true, "predicted_deliver_by_date": "2025-06-15", "predicted_deliver_days": + 3, "rate_usd": "6.07", "service": "GroundAdvantage"}, {"carrier": "USPS", + "meets_ruleset_requirements": true, "predicted_deliver_by_date": "2025-06-13", + "predicted_deliver_days": 1, "rate_usd": "34.15", "service": "Express"}], + "matching_rule_idx": 0, "ruleset_description": "Buy the cheapest rate that + satisfies all of the following:\nRule 0\n \nOtherwise buy the cheapest + rate", "luma_selected_rate": {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "currency": "USD", "rate": "6.07", "service": "GroundAdvantage", "luma_predicted_deliver_by_date": + "2025-06-15"}}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '873' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 5b2f8478684b38fee2bb2938008b45a8 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb33nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq e8fe6f4ec2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.276214' + x-version-label: + - easypost-202506122002-4fcd94d6be-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_order_buy.yaml b/tests/cassettes/test_order_buy.yaml index 441e3f4c..1950515b 100644 --- a/tests/cassettes/test_order_buy.yaml +++ b/tests/cassettes/test_order_buy.yaml @@ -5,13 +5,8 @@ interactions: "country": "US", "email": "test@example.com", "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "shipments": [{"from_address": {"name": "Jack Sparrow", - "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", - "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": - "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": - "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": - 10, "width": 8, "height": 4, "weight": 15.4}}]}}' + "phone": "5555555555"}, "shipments": [{"parcel": {"weight": 10.2}}, {"parcel": + {"weight": 17.5}}]}}' headers: Accept: - '*/*' @@ -20,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '925' + - '501' Content-Type: - application/json authorization: @@ -31,163 +26,178 @@ interactions: uri: https://api.easypost.com/v2/orders response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:55Z", "updated_at": "2023-05-15T18:07:56Z", - "customs_info": null, "from_address": {"id": "adr_6a844103f34b11edbb9cac1f6bc72124", - "object": "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": - "2023-05-15T18:07:55+00:00", "name": "Jack Sparrow", "company": null, "street1": + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:28Z", + "updated_at": "2025-03-06T19:48:28Z", "customs_info": null, "from_address": + {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipments": [{"id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "created_at": + "2025-03-06T19:48:28Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": null, "updated_at": + "2025-03-06T19:48:28Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f99ac245fac311efb2c73cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": + "2025-03-06T19:48:28+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": - "2023-05-15T18:07:55+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_c91fef40e21c48a3a4846ab323722583", "parcel": {"id": "prcl_af8d754b79db47c6aec316862abfd29d", + "object": "Parcel", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_1fbcb190f99a463b8c2d9bb96326c8fe", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5d3f583efcff423392d3dd5a6be28127", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_31ae98adc1924a349936598f46f54365", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": + "2025-03-06T19:48:28+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "return_address": {"id": "adr_6a844103f34b11edbb9cac1f6bc72124", "object": - "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + {}}, "forms": [], "fees": [], "object": "Shipment"}, {"id": "shp_481597ab57634eea9a07f99e967f6aa5", + "created_at": "2025-03-06T19:48:28Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:28Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": null, "from_address": {"id": + "adr_f99ac245fac311efb2c73cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:55Z", "is_return": false, - "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-15T18:07:55Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_6a844103f34b11edbb9cac1f6bc72124", "object": "Address", "created_at": - "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", "name": + {}}, "insurance": null, "order_id": "order_c91fef40e21c48a3a4846ab323722583", + "parcel": {"id": "prcl_240f15d90ddd406ca5160b0c13b1b63a", "object": "Parcel", + "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_8d4e8ba9d6ed40f5aa283cdadd0aadf4", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8112d82e5349417aae4dbb96f3f279ce", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_114b35086efb4c718d17eab9520048a8", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": + "2025-03-06T19:48:28+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_9aa57eaab7b74b92bbe465888a8431fe", - "parcel": {"id": "prcl_74bff50ca05b4fc49b6a5bec327747ec", "object": "Parcel", - "created_at": "2023-05-15T18:07:55Z", "updated_at": "2023-05-15T18:07:55Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_13e098de84ad41eb9ad1daba80e9718a", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9b653a64965642f4b9f404e132bfa810", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_138af6f573814e5e8e43c7f9319e3097", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a0f675560d2b4ba59f9fe5774c9d33c3", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", + {}}, "buyer_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_6a844103f34b11edbb9cac1f6bc72124", - "object": "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": - "2023-05-15T18:07:55+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_98fc798a93d24dea8102513ae82ca2dd", - "object": "Shipment"}], "rates": [{"id": "rate_13e098de84ad41eb9ad1daba80e9718a", + {}}, "forms": [], "fees": [], "object": "Shipment"}], "rates": [{"id": "rate_1fbcb190f99a463b8c2d9bb96326c8fe", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_9b653a64965642f4b9f404e132bfa810", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "ParcelSelect", "carrier": - "USPS", "rate": "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": - "USD", "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 5, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 5, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_138af6f573814e5e8e43c7f9319e3097", + "service": "Express", "carrier": "USPS", "rate": "72.55", "currency": "USD", + "retail_rate": "83.25", "retail_currency": "USD", "list_rate": "72.55", "list_currency": + "USD", "billing_type": "easypost", "delivery_days": 1, "delivery_date": null, + "delivery_date_guaranteed": false, "est_delivery_days": 1, "shipment_id": + "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_5d3f583efcff423392d3dd5a6be28127", "object": "Rate", "created_at": + null, "updated_at": null, "mode": "test", "service": "Priority", "carrier": + "USPS", "rate": "15.64", "currency": "USD", "retail_rate": "22.55", "retail_currency": + "USD", "list_rate": "17.41", "list_currency": "USD", "billing_type": "easypost", + "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, + "est_delivery_days": 2, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_31ae98adc1924a349936598f46f54365", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_a0f675560d2b4ba59f9fe5774c9d33c3", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "First", "carrier": "USPS", - "rate": "6.07", "currency": "USD", "retail_rate": "6.07", "retail_currency": - "USD", "list_rate": "6.07", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 3, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_9aa57eaab7b74b92bbe465888a8431fe", - "object": "Order"}' + "service": "GroundAdvantage", "carrier": "USPS", "rate": "11.74", "currency": + "USD", "retail_rate": "18.40", "retail_currency": "USD", "list_rate": "13.26", + "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": + null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": + "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], + "id": "order_c91fef40e21c48a3a4846ab323722583", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '11092' + - '12448' content-type: - application/json; charset=utf-8 - etag: - - W/"a95174c5aebcd92ab6e9aac5e199dcde" expires: - '0' location: - - /api/v2/orders/order_9aa57eaab7b74b92bbe465888a8431fe + - /api/v2/orders/order_c91fef40e21c48a3a4846ab323722583 pragma: - no-cache referrer-policy: @@ -198,34 +208,32 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d4646274fbe78751610024b6f3 + - 8e8eb62667c9fc0ce2b97b360018984a x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.883475' + - '0.363678' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"carrier": "USPS", "service": "First"}' + body: '{"carrier": "USPS", "service": "GroundAdvantage"}' headers: Accept: - '*/*' @@ -234,7 +242,7 @@ interactions: Connection: - keep-alive Content-Length: - - '39' + - '49' Content-Type: - application/json authorization: @@ -242,136 +250,204 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/orders/order_9aa57eaab7b74b92bbe465888a8431fe/buy + uri: https://api.easypost.com/v2/orders/order_c91fef40e21c48a3a4846ab323722583/buy response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:55Z", "updated_at": "2023-05-15T18:07:56Z", - "customs_info": null, "from_address": {"id": "adr_6a844103f34b11edbb9cac1f6bc72124", - "object": "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": - "2023-05-15T18:07:55+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": - "2023-05-15T18:07:56+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": - "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", - "zip": "90277-2506", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": - null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": - [], "details": null}, "delivery": {"success": true, "errors": [], "details": - {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, - "buyer_address": {"id": "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:56+00:00", + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:28Z", + "updated_at": "2025-03-06T19:48:28Z", "customs_info": null, "from_address": + {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:29+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "buyer_address": + {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:29+00:00", "name": + "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "return_address": - {"id": "adr_6a844103f34b11edbb9cac1f6bc72124", "object": "Address", "created_at": - "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", "name": + {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:55Z", "is_return": false, - "messages": [], "mode": "test", "options": {"currency": "USD", "payment": - {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", - "tracking_code": "9400100104262210000459", "updated_at": "2023-05-15T18:07:57Z", - "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": - null, "from_address": {"id": "adr_6a844103f34b11edbb9cac1f6bc72124", "object": - "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", + {}}, "shipments": [{"id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "created_at": + "2025-03-06T19:48:28Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": "9400100208303109500713", + "updated_at": "2025-03-06T19:48:29Z", "batch_id": null, "batch_status": null, + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_f99ac245fac311efb2c73cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": + "2025-03-06T19:48:28+00:00", "name": "Jack Sparrow", "company": null, "street1": + "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": + "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_c91fef40e21c48a3a4846ab323722583", "parcel": {"id": "prcl_af8d754b79db47c6aec316862abfd29d", + "object": "Parcel", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": {"object": "PostageLabel", + "id": "pl_773be9fdec1a4c52a07562abe4232fc5", "created_at": "2025-03-06T19:48:29Z", + "updated_at": "2025-03-06T19:48:29Z", "date_advance": 0, "integrated_form": + "none", "label_date": "2025-03-06T19:48:29Z", "label_resolution": 300, "label_size": + "4x6", "label_type": "default", "label_file_type": "image/png", "label_url": + "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e8e142e78a33c24ab4a361d0f36d3242e7.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_1fbcb190f99a463b8c2d9bb96326c8fe", "object": + "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5d3f583efcff423392d3dd5a6be28127", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_31ae98adc1924a349936598f46f54365", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_31ae98adc1924a349936598f46f54365", "object": + "Rate", "created_at": "2025-03-06T19:48:29Z", "updated_at": "2025-03-06T19:48:29Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_213b27933f19450cbb6096e57a372e0e", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500713", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:48:30Z", + "updated_at": "2025-03-06T19:48:30Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier": "USPS", + "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": + "https://track.easypost.com/djE6dHJrXzIxM2IyNzkzM2YxOTQ1MGNiYjYwOTZlNTdhMzcyZTBl"}, + "to_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:29+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": + 4, "return_address": {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_9aa57eaab7b74b92bbe465888a8431fe", - "parcel": {"id": "prcl_74bff50ca05b4fc49b6a5bec327747ec", "object": "Parcel", - "created_at": "2023-05-15T18:07:55Z", "updated_at": "2023-05-15T18:07:55Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_001fab69feec4c8baaf9b9eef4335471", - "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-15T18:07:56Z", - "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230515/a1a15d8d9387433dae5f99b38afac250.png", + {}}, "buyer_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:29+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": + [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "5.21000", "charged": true, "refunded": false}], "object": "Shipment"}, {"id": + "shp_481597ab57634eea9a07f99e967f6aa5", "created_at": "2025-03-06T19:48:28Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9434600208303109492683", "updated_at": + "2025-03-06T19:48:30Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f99ac245fac311efb2c73cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": + "2025-03-06T19:48:28+00:00", "name": "Jack Sparrow", "company": null, "street1": + "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": + "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_c91fef40e21c48a3a4846ab323722583", "parcel": {"id": "prcl_240f15d90ddd406ca5160b0c13b1b63a", + "object": "Parcel", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": {"object": "PostageLabel", + "id": "pl_efa194d079e047f49dde3669686f90ae", "created_at": "2025-03-06T19:48:29Z", + "updated_at": "2025-03-06T19:48:30Z", "date_advance": 0, "integrated_form": + "none", "label_date": "2025-03-06T19:48:29Z", "label_resolution": 300, "label_size": + "4x6", "label_type": "default", "label_file_type": "image/png", "label_url": + "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e80c5d306f3e974011aa2640e65cb89ed5.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_13e098de84ad41eb9ad1daba80e9718a", "object": - "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9b653a64965642f4b9f404e132bfa810", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_138af6f573814e5e8e43c7f9319e3097", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + null}, "rates": [{"id": "rate_8d4e8ba9d6ed40f5aa283cdadd0aadf4", "object": + "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8112d82e5349417aae4dbb96f3f279ce", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a0f675560d2b4ba59f9fe5774c9d33c3", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_a0f675560d2b4ba59f9fe5774c9d33c3", - "object": "Rate", "created_at": "2023-05-15T18:07:56Z", "updated_at": "2023-05-15T18:07:56Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_f7828f8b71394cfebe52ff000217d53a", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210000459", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-15T18:07:57Z", "updated_at": - "2023-05-15T18:07:57Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier": "USPS", + 2, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_114b35086efb4c718d17eab9520048a8", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_114b35086efb4c718d17eab9520048a8", "object": + "Rate", "created_at": "2025-03-06T19:48:29Z", "updated_at": "2025-03-06T19:48:29Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_a2af9f98be1f4922abb5bf8c970a86c5", + "object": "Tracker", "mode": "test", "tracking_code": "9434600208303109492683", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:48:30Z", + "updated_at": "2025-03-06T19:48:30Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrX2Y3ODI4ZjhiNzEzOTRjZmViZTUyZmYwMDAyMTdkNTNh"}, - "to_address": {"id": "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:56+00:00", + "https://track.easypost.com/djE6dHJrX2EyYWY5Zjk4YmUxZjQ5MjJhYmI1YmY4Yzk3MGE4NmM1"}, + "to_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:29+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_6a844103f34b11edbb9cac1f6bc72124", "object": - "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:55+00:00", + 4, "return_address": {"id": "adr_f99ac245fac311efb2c73cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:28+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_6a82c2b0f34b11ed9339ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-15T18:07:55+00:00", "updated_at": "2023-05-15T18:07:56+00:00", + {}}, "buyer_address": {"id": "adr_f9991dacfac311ef91d5ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:28+00:00", "updated_at": "2025-03-06T19:48:29+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, @@ -379,44 +455,35 @@ interactions: "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_98fc798a93d24dea8102513ae82ca2dd", - "object": "Shipment"}], "rates": [{"id": "rate_13e098de84ad41eb9ad1daba80e9718a", - "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_9b653a64965642f4b9f404e132bfa810", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "ParcelSelect", "carrier": - "USPS", "rate": "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": - "USD", "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 5, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 5, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_138af6f573814e5e8e43c7f9319e3097", + "6.53000", "charged": true, "refunded": false}], "object": "Shipment"}], "rates": + [{"id": "rate_1fbcb190f99a463b8c2d9bb96326c8fe", "object": "Rate", "created_at": + null, "updated_at": null, "mode": "test", "service": "Express", "carrier": + "USPS", "rate": "72.55", "currency": "USD", "retail_rate": "83.25", "retail_currency": + "USD", "list_rate": "72.55", "list_currency": "USD", "billing_type": "easypost", + "delivery_days": 1, "delivery_date": null, "delivery_date_guaranteed": false, + "est_delivery_days": 1, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5d3f583efcff423392d3dd5a6be28127", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": + "service": "Priority", "carrier": "USPS", "rate": "15.64", "currency": "USD", + "retail_rate": "22.55", "retail_currency": "USD", "list_rate": "17.41", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_98fc798a93d24dea8102513ae82ca2dd", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_a0f675560d2b4ba59f9fe5774c9d33c3", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "First", "carrier": "USPS", - "rate": "6.07", "currency": "USD", "retail_rate": "6.07", "retail_currency": - "USD", "list_rate": "6.07", "list_currency": "USD", "billing_type": "easypost", + "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_31ae98adc1924a349936598f46f54365", "object": "Rate", "created_at": + null, "updated_at": null, "mode": "test", "service": "GroundAdvantage", "carrier": + "USPS", "rate": "11.74", "currency": "USD", "retail_rate": "18.40", "retail_currency": + "USD", "list_rate": "13.26", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 3, "shipment_id": "shp_98fc798a93d24dea8102513ae82ca2dd", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_9aa57eaab7b74b92bbe465888a8431fe", + "est_delivery_days": 3, "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_c91fef40e21c48a3a4846ab323722583", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '12588' + - '17063' content-type: - application/json; charset=utf-8 - etag: - - W/"73f418f3c11751d893cbb56abe0d0313" expires: - '0' pragma: @@ -434,20 +501,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d4646274fce78751610024b742 + - 8e8eb62667c9fc0ce2b97b36001898e6 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.909304' + - '1.282990' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_order_create.yaml b/tests/cassettes/test_order_create.yaml index 33c19272..20b75728 100644 --- a/tests/cassettes/test_order_create.yaml +++ b/tests/cassettes/test_order_create.yaml @@ -5,13 +5,8 @@ interactions: "country": "US", "email": "test@example.com", "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "shipments": [{"from_address": {"name": "Jack Sparrow", - "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", - "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": - "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": - "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": - 10, "width": 8, "height": 4, "weight": 15.4}}]}}' + "phone": "5555555555"}, "shipments": [{"parcel": {"weight": 10.2}}, {"parcel": + {"weight": 17.5}}]}}' headers: Accept: - '*/*' @@ -20,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '925' + - '501' Content-Type: - application/json authorization: @@ -31,163 +26,178 @@ interactions: uri: https://api.easypost.com/v2/orders response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:13Z", "updated_at": "2023-05-15T18:07:14Z", - "customs_info": null, "from_address": {"id": "adr_517cda4df34b11eda6ffac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T18:07:13+00:00", "updated_at": - "2023-05-15T18:07:13+00:00", "name": "Jack Sparrow", "company": null, "street1": + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:26Z", + "updated_at": "2025-03-06T19:48:26Z", "customs_info": null, "from_address": + {"id": "adr_f86e7b61fac311ef9688ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_f86cb7a8fac311ef9685ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f86cb7a8fac311ef9685ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_f86e7b61fac311ef9688ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipments": [{"id": "shp_9eb9d0a2eab64153b1c03645eac39cdb", "created_at": + "2025-03-06T19:48:26Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": null, "updated_at": + "2025-03-06T19:48:26Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f86e7b61fac311ef9688ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": + "2025-03-06T19:48:26+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_517b4994f34b11eda1ae3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:13+00:00", "updated_at": - "2023-05-15T18:07:13+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_2de8eebf610b4fd694768fdb151b33e2", "parcel": {"id": "prcl_0beed44accc946b1ac57d8f695ceab22", + "object": "Parcel", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_25cedc8227724e2698295f2fad9f2019", + "object": "Rate", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_9eb9d0a2eab64153b1c03645eac39cdb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_7cfcfb3a80a54159bd9770c75aaaf744", + "object": "Rate", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_9eb9d0a2eab64153b1c03645eac39cdb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_814abc5f9ddd4a65ae1fd8a2abd0badb", + "object": "Rate", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_9eb9d0a2eab64153b1c03645eac39cdb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f86cb7a8fac311ef9685ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": + "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_517b4994f34b11eda1ae3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:13+00:00", "updated_at": "2023-05-15T18:07:13+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f86e7b61fac311ef9688ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f86cb7a8fac311ef9685ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "return_address": {"id": "adr_517cda4df34b11eda6ffac1f6bc7b362", "object": - "Address", "created_at": "2023-05-15T18:07:13+00:00", "updated_at": "2023-05-15T18:07:13+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + {}}, "forms": [], "fees": [], "object": "Shipment"}, {"id": "shp_a38a71078e2449c6bca5ff496497290e", + "created_at": "2025-03-06T19:48:26Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:26Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": null, "from_address": {"id": + "adr_f86e7b61fac311ef9688ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:13Z", "is_return": false, - "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-15T18:07:13Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_517cda4df34b11eda6ffac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:13+00:00", "updated_at": "2023-05-15T18:07:13+00:00", "name": + {}}, "insurance": null, "order_id": "order_2de8eebf610b4fd694768fdb151b33e2", + "parcel": {"id": "prcl_00f7f86a3bb346a59e4387a766c2c652", "object": "Parcel", + "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_de2ba121c28249f08801d6a032f26f84", + "object": "Rate", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_a38a71078e2449c6bca5ff496497290e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9558cf7a7f434006bc052e791cd870c8", + "object": "Rate", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_a38a71078e2449c6bca5ff496497290e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_eb37a274e54c4a6880c7adc1cb04ca68", + "object": "Rate", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_a38a71078e2449c6bca5ff496497290e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f86cb7a8fac311ef9685ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": + "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f86e7b61fac311ef9688ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_d4c8a44c20fa4414b0cb68e578ab35a9", - "parcel": {"id": "prcl_f3698d5a6e4b40b4adc436cc763c3d38", "object": "Parcel", - "created_at": "2023-05-15T18:07:13Z", "updated_at": "2023-05-15T18:07:13Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_0f04f896fc6f42b48abda9c0cab933ed", - "object": "Rate", "created_at": "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:14Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_3f2ab3f33f504ee086e60cd55d6667f6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f01ce9c0d8e64c749c69140047285a22", - "object": "Rate", "created_at": "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:14Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_3f2ab3f33f504ee086e60cd55d6667f6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b5c9125a1f014fe993f01fb17714f7f3", - "object": "Rate", "created_at": "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:14Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3f2ab3f33f504ee086e60cd55d6667f6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_cb9c2b9251e24ca69618b43ee61e2100", "object": "Rate", "created_at": - "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:14Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_3f2ab3f33f504ee086e60cd55d6667f6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_517b4994f34b11eda1ae3cecef1b359e", "object": - "Address", "created_at": "2023-05-15T18:07:13+00:00", "updated_at": "2023-05-15T18:07:13+00:00", + {}}, "buyer_address": {"id": "adr_f86cb7a8fac311ef9685ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_517cda4df34b11eda6ffac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T18:07:13+00:00", "updated_at": - "2023-05-15T18:07:13+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_517b4994f34b11eda1ae3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:13+00:00", "updated_at": "2023-05-15T18:07:13+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_3f2ab3f33f504ee086e60cd55d6667f6", - "object": "Shipment"}], "rates": [{"id": "rate_0f04f896fc6f42b48abda9c0cab933ed", - "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_3f2ab3f33f504ee086e60cd55d6667f6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_f01ce9c0d8e64c749c69140047285a22", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "Priority", "carrier": - "USPS", "rate": "7.15", "currency": "USD", "retail_rate": "10.20", "retail_currency": - "USD", "list_rate": "8.24", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 2, "shipment_id": "shp_3f2ab3f33f504ee086e60cd55d6667f6", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b5c9125a1f014fe993f01fb17714f7f3", + {}}, "forms": [], "fees": [], "object": "Shipment"}], "rates": [{"id": "rate_25cedc8227724e2698295f2fad9f2019", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "First", "carrier": "USPS", "rate": "6.07", "currency": "USD", - "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3f2ab3f33f504ee086e60cd55d6667f6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_cb9c2b9251e24ca69618b43ee61e2100", "object": "Rate", "created_at": + "service": "GroundAdvantage", "carrier": "USPS", "rate": "11.74", "currency": + "USD", "retail_rate": "18.40", "retail_currency": "USD", "list_rate": "13.26", + "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": + null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": + "shp_9eb9d0a2eab64153b1c03645eac39cdb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_7cfcfb3a80a54159bd9770c75aaaf744", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", "service": "Express", "carrier": - "USPS", "rate": "31.25", "currency": "USD", "retail_rate": "35.80", "retail_currency": - "USD", "list_rate": "31.25", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": null, "delivery_date": null, "delivery_date_guaranteed": - false, "est_delivery_days": null, "shipment_id": "shp_3f2ab3f33f504ee086e60cd55d6667f6", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_d4c8a44c20fa4414b0cb68e578ab35a9", - "object": "Order"}' + "USPS", "rate": "72.55", "currency": "USD", "retail_rate": "83.25", "retail_currency": + "USD", "list_rate": "72.55", "list_currency": "USD", "billing_type": "easypost", + "delivery_days": 1, "delivery_date": null, "delivery_date_guaranteed": false, + "est_delivery_days": 1, "shipment_id": "shp_9eb9d0a2eab64153b1c03645eac39cdb", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_814abc5f9ddd4a65ae1fd8a2abd0badb", + "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", + "service": "Priority", "carrier": "USPS", "rate": "15.64", "currency": "USD", + "retail_rate": "22.55", "retail_currency": "USD", "list_rate": "17.41", "list_currency": + "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, + "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": + "shp_9eb9d0a2eab64153b1c03645eac39cdb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], + "id": "order_2de8eebf610b4fd694768fdb151b33e2", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '11092' + - '12448' content-type: - application/json; charset=utf-8 - etag: - - W/"1cb2a6b7f20b8ec98e65a417fe0ac51f" expires: - '0' location: - - /api/v2/orders/order_d4c8a44c20fa4414b0cb68e578ab35a9 + - /api/v2/orders/order_2de8eebf610b4fd694768fdb151b33e2 pragma: - no-cache referrer-policy: @@ -203,20 +213,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d0646274d1e78751240024a284 + - 8e8eb62667c9fc0ae2b97b33001895e8 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.790681' + - '0.315445' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_order_get_rates.yaml b/tests/cassettes/test_order_get_rates.yaml index f5bef302..cf31289e 100644 --- a/tests/cassettes/test_order_get_rates.yaml +++ b/tests/cassettes/test_order_get_rates.yaml @@ -5,13 +5,8 @@ interactions: "country": "US", "email": "test@example.com", "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "shipments": [{"from_address": {"name": "Jack Sparrow", - "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", - "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": - "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": - "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": - 10, "width": 8, "height": 4, "weight": 15.4}}]}}' + "phone": "5555555555"}, "shipments": [{"parcel": {"weight": 10.2}}, {"parcel": + {"weight": 17.5}}]}}' headers: Accept: - '*/*' @@ -20,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '925' + - '501' Content-Type: - application/json authorization: @@ -31,163 +26,178 @@ interactions: uri: https://api.easypost.com/v2/orders response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:16Z", - "customs_info": null, "from_address": {"id": "adr_52f0ce84f34b11eda78f3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": - "2023-05-15T18:07:15+00:00", "name": "Jack Sparrow", "company": null, "street1": + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:27Z", + "updated_at": "2025-03-06T19:48:27Z", "customs_info": null, "from_address": + {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipments": [{"id": "shp_1a082204e53c4fe0be7ddaacc6755589", "created_at": + "2025-03-06T19:48:27Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": null, "updated_at": + "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_52ee68eef34b11edac99ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": - "2023-05-15T18:07:15+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_fa66ba284bc7484994770a4a2dde7a5f", "parcel": {"id": "prcl_a15a14ef3a3c49cb997ed0ed71c0b0a8", + "object": "Parcel", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_2f202da4dc6b4678a7c3d0f99b0d12fb", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_7087cced66144902a5037d31f21e71aa", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ec9c7e7122b348be967048bbb8f03478", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_52ee68eef34b11edac99ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "return_address": {"id": "adr_52f0ce84f34b11eda78f3cecef1b359e", "object": - "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + {}}, "forms": [], "fees": [], "object": "Shipment"}, {"id": "shp_10e4d46ae7004e44a601e87956a825bb", + "created_at": "2025-03-06T19:48:27Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": null, "from_address": {"id": + "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:15Z", "is_return": false, - "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-15T18:07:15Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_52f0ce84f34b11eda78f3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", "name": + {}}, "insurance": null, "order_id": "order_fa66ba284bc7484994770a4a2dde7a5f", + "parcel": {"id": "prcl_0d469dca44c7413199bf81d687797247", "object": "Parcel", + "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_218afbbc29fa4384911db143218247b0", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_10e4d46ae7004e44a601e87956a825bb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2ed60a576c26436987b517a2f32a1bc5", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_10e4d46ae7004e44a601e87956a825bb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_cd011cbd74d64633ab55c57f4381d847", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_10e4d46ae7004e44a601e87956a825bb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_21b9c37eea21450a8c9bcf7ee56e9ab3", - "parcel": {"id": "prcl_4c7a575b80604e2d9225a5acd2925870", "object": "Parcel", - "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_e873488f0e4c43e7a5e9bb503cde1671", - "object": "Rate", "created_at": "2023-05-15T18:07:16Z", "updated_at": "2023-05-15T18:07:16Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4b092046e07c4991a54db88617f17aca", - "object": "Rate", "created_at": "2023-05-15T18:07:16Z", "updated_at": "2023-05-15T18:07:16Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_315e4bb5ca4a477d9fd836388b9f81a1", "object": "Rate", "created_at": - "2023-05-15T18:07:16Z", "updated_at": "2023-05-15T18:07:16Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_9f26d202602f4c99bed1a4c3adfec4eb", "object": "Rate", "created_at": - "2023-05-15T18:07:16Z", "updated_at": "2023-05-15T18:07:16Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_52ee68eef34b11edac99ac1f6bc7b362", "object": - "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", + {}}, "buyer_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_52f0ce84f34b11eda78f3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": - "2023-05-15T18:07:15+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_52ee68eef34b11edac99ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_78cfbe8400b84c929cb482a6520f032f", - "object": "Shipment"}], "rates": [{"id": "rate_e873488f0e4c43e7a5e9bb503cde1671", + {}}, "forms": [], "fees": [], "object": "Shipment"}], "rates": [{"id": "rate_2f202da4dc6b4678a7c3d0f99b0d12fb", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": + "service": "Priority", "carrier": "USPS", "rate": "15.64", "currency": "USD", + "retail_rate": "22.55", "retail_currency": "USD", "list_rate": "17.41", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_4b092046e07c4991a54db88617f17aca", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "First", "carrier": "USPS", - "rate": "6.07", "currency": "USD", "retail_rate": "6.07", "retail_currency": - "USD", "list_rate": "6.07", "list_currency": "USD", "billing_type": "easypost", + "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_7087cced66144902a5037d31f21e71aa", "object": "Rate", "created_at": + null, "updated_at": null, "mode": "test", "service": "GroundAdvantage", "carrier": + "USPS", "rate": "11.74", "currency": "USD", "retail_rate": "18.40", "retail_currency": + "USD", "list_rate": "13.26", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 3, "shipment_id": "shp_78cfbe8400b84c929cb482a6520f032f", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_315e4bb5ca4a477d9fd836388b9f81a1", + "est_delivery_days": 3, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ec9c7e7122b348be967048bbb8f03478", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_9f26d202602f4c99bed1a4c3adfec4eb", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "ParcelSelect", "carrier": - "USPS", "rate": "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": - "USD", "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 5, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 5, "shipment_id": "shp_78cfbe8400b84c929cb482a6520f032f", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_21b9c37eea21450a8c9bcf7ee56e9ab3", - "object": "Order"}' + "service": "Express", "carrier": "USPS", "rate": "72.55", "currency": "USD", + "retail_rate": "83.25", "retail_currency": "USD", "list_rate": "72.55", "list_currency": + "USD", "billing_type": "easypost", "delivery_days": 1, "delivery_date": null, + "delivery_date_guaranteed": false, "est_delivery_days": 1, "shipment_id": + "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], + "id": "order_fa66ba284bc7484994770a4a2dde7a5f", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '11092' + - '12448' content-type: - application/json; charset=utf-8 - etag: - - W/"d509ce4848e30e4d9a8ba34a8968d7e7" expires: - '0' location: - - /api/v2/orders/order_21b9c37eea21450a8c9bcf7ee56e9ab3 + - /api/v2/orders/order_fa66ba284bc7484994770a4a2dde7a5f pragma: - no-cache referrer-policy: @@ -203,20 +213,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d1646274d3e787513d0024a3b3 + - 8e8eb62b67c9fc0be2b97b350018972d x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.726503' + - '0.316155' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -236,150 +246,177 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/orders/order_21b9c37eea21450a8c9bcf7ee56e9ab3/rates + uri: https://api.easypost.com/v2/orders/order_fa66ba284bc7484994770a4a2dde7a5f/rates response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:16Z", - "customs_info": null, "from_address": {"id": "adr_52f0ce84f34b11eda78f3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": - "2023-05-15T18:07:15+00:00", "name": "Jack Sparrow", "company": null, "street1": + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:27Z", + "updated_at": "2025-03-06T19:48:27Z", "customs_info": null, "from_address": + {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipments": [{"id": "shp_1a082204e53c4fe0be7ddaacc6755589", "created_at": + "2025-03-06T19:48:27Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": null, "updated_at": + "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_52ee68eef34b11edac99ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": - "2023-05-15T18:07:15+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_fa66ba284bc7484994770a4a2dde7a5f", "parcel": {"id": "prcl_a15a14ef3a3c49cb997ed0ed71c0b0a8", + "object": "Parcel", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_119c155cc9104c138f59376bc698b53c", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_38565db1c24c4f50b3a9bfa1b2a74b7c", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_310cefff7f58457db8cc063f538fb614", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_52ee68eef34b11edac99ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "return_address": {"id": "adr_52f0ce84f34b11eda78f3cecef1b359e", "object": - "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + {}}, "forms": [], "fees": [], "object": "Shipment"}, {"id": "shp_10e4d46ae7004e44a601e87956a825bb", + "created_at": "2025-03-06T19:48:27Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": null, "from_address": {"id": + "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:15Z", "is_return": false, - "messages": [], "mode": "test", "options": {"currency": "USD", "payment": - {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", - "tracking_code": null, "updated_at": "2023-05-15T18:07:15Z", "batch_id": null, - "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_52f0ce84f34b11eda78f3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", "name": + {}}, "insurance": null, "order_id": "order_fa66ba284bc7484994770a4a2dde7a5f", + "parcel": {"id": "prcl_0d469dca44c7413199bf81d687797247", "object": "Parcel", + "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_7d8ea3369f3141a38059a835db226599", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_10e4d46ae7004e44a601e87956a825bb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_1c7d67ba1f494c029d1cd02e3366a089", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_10e4d46ae7004e44a601e87956a825bb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c47f2e0e0add4d4587c886d2c868a45b", + "object": "Rate", "created_at": "2025-03-06T19:48:28Z", "updated_at": "2025-03-06T19:48:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_10e4d46ae7004e44a601e87956a825bb", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f9137e8dfac311ef9199ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_21b9c37eea21450a8c9bcf7ee56e9ab3", - "parcel": {"id": "prcl_4c7a575b80604e2d9225a5acd2925870", "object": "Parcel", - "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_e6b05d55b26e41c898f27cc5a056cc93", - "object": "Rate", "created_at": "2023-05-15T18:07:17Z", "updated_at": "2023-05-15T18:07:17Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f816e28e6e4245b2b79e754d3629348f", - "object": "Rate", "created_at": "2023-05-15T18:07:17Z", "updated_at": "2023-05-15T18:07:17Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f630e580e4a74ceb9990e81cd5fb0042", - "object": "Rate", "created_at": "2023-05-15T18:07:17Z", "updated_at": "2023-05-15T18:07:17Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_5329e0f3ba9c4f848ba956079e8f69b4", "object": "Rate", "created_at": - "2023-05-15T18:07:17Z", "updated_at": "2023-05-15T18:07:17Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_52ee68eef34b11edac99ac1f6bc7b362", "object": - "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", + {}}, "buyer_address": {"id": "adr_f911d3a4fac311efb2733cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_52f0ce84f34b11eda78f3cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:15+00:00", "updated_at": - "2023-05-15T18:07:15+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_52ee68eef34b11edac99ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:15+00:00", "updated_at": "2023-05-15T18:07:15+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_78cfbe8400b84c929cb482a6520f032f", - "object": "Shipment"}], "rates": [{"id": "rate_e6b05d55b26e41c898f27cc5a056cc93", + {}}, "forms": [], "fees": [], "object": "Shipment"}], "rates": [{"id": "rate_119c155cc9104c138f59376bc698b53c", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_f816e28e6e4245b2b79e754d3629348f", "object": "Rate", "created_at": + "service": "Express", "carrier": "USPS", "rate": "72.55", "currency": "USD", + "retail_rate": "83.25", "retail_currency": "USD", "list_rate": "72.55", "list_currency": + "USD", "billing_type": "easypost", "delivery_days": 1, "delivery_date": null, + "delivery_date_guaranteed": false, "est_delivery_days": 1, "shipment_id": + "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_38565db1c24c4f50b3a9bfa1b2a74b7c", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", "service": "Priority", "carrier": - "USPS", "rate": "7.15", "currency": "USD", "retail_rate": "10.20", "retail_currency": - "USD", "list_rate": "8.24", "list_currency": "USD", "billing_type": "easypost", + "USPS", "rate": "15.64", "currency": "USD", "retail_rate": "22.55", "retail_currency": + "USD", "list_rate": "17.41", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 2, "shipment_id": "shp_78cfbe8400b84c929cb482a6520f032f", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f630e580e4a74ceb9990e81cd5fb0042", + "est_delivery_days": 2, "shipment_id": "shp_1a082204e53c4fe0be7ddaacc6755589", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_310cefff7f58457db8cc063f538fb614", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "First", "carrier": "USPS", "rate": "6.07", "currency": "USD", - "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_78cfbe8400b84c929cb482a6520f032f", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_5329e0f3ba9c4f848ba956079e8f69b4", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "Express", "carrier": - "USPS", "rate": "31.25", "currency": "USD", "retail_rate": "35.80", "retail_currency": - "USD", "list_rate": "31.25", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": null, "delivery_date": null, "delivery_date_guaranteed": - false, "est_delivery_days": null, "shipment_id": "shp_78cfbe8400b84c929cb482a6520f032f", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_21b9c37eea21450a8c9bcf7ee56e9ab3", - "object": "Order"}' + "service": "GroundAdvantage", "carrier": "USPS", "rate": "11.74", "currency": + "USD", "retail_rate": "18.40", "retail_currency": "USD", "list_rate": "13.26", + "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": + null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": + "shp_1a082204e53c4fe0be7ddaacc6755589", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], + "id": "order_fa66ba284bc7484994770a4a2dde7a5f", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '10103' + - '12448' content-type: - application/json; charset=utf-8 - etag: - - W/"ad042ca4cdc6ee2fb8a19781ce750dbd" expires: - '0' pragma: @@ -397,20 +434,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d1646274d4e787513d0024a41f + - 8e8eb62b67c9fc0be2b97b35001897a3 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.899111' + - '0.378195' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_order_lowest_rate.yaml b/tests/cassettes/test_order_lowest_rate.yaml index 1339616e..57ac5d03 100644 --- a/tests/cassettes/test_order_lowest_rate.yaml +++ b/tests/cassettes/test_order_lowest_rate.yaml @@ -5,13 +5,8 @@ interactions: "country": "US", "email": "test@example.com", "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "shipments": [{"from_address": {"name": "Jack Sparrow", - "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", - "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": - "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": - "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": - 10, "width": 8, "height": 4, "weight": 15.4}}]}}' + "phone": "5555555555"}, "shipments": [{"parcel": {"weight": 10.2}}, {"parcel": + {"weight": 17.5}}]}}' headers: Accept: - '*/*' @@ -20,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '925' + - '501' Content-Type: - application/json authorization: @@ -31,163 +26,178 @@ interactions: uri: https://api.easypost.com/v2/orders response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:18Z", "updated_at": "2023-05-15T18:07:19Z", - "customs_info": null, "from_address": {"id": "adr_54b71eabf34b11eda31dac1f6bc72124", - "object": "Address", "created_at": "2023-05-15T18:07:18+00:00", "updated_at": - "2023-05-15T18:07:18+00:00", "name": "Jack Sparrow", "company": null, "street1": + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:30Z", + "updated_at": "2025-03-06T19:48:30Z", "customs_info": null, "from_address": + {"id": "adr_fab49ddbfac311efb36f3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_fab33a37fac311efb36e3cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_fab33a37fac311efb36e3cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_fab49ddbfac311efb36f3cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipments": [{"id": "shp_f82ddf699f31400bbe86c21663960619", "created_at": + "2025-03-06T19:48:30Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": null, "updated_at": + "2025-03-06T19:48:30Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_fab49ddbfac311efb36f3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": + "2025-03-06T19:48:30+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_54b57d4bf34b11edaed03cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:18+00:00", "updated_at": - "2023-05-15T18:07:18+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_26702f7c8a5e401faeb65501179e3262", "parcel": {"id": "prcl_3ccdaeb12e474810accc6bb6caa59f83", + "object": "Parcel", "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_cba7e0a3d7124d2ba816ea612d55986f", + "object": "Rate", "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_f82ddf699f31400bbe86c21663960619", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9aae4ae3164b4d2bb79efbf307e48725", + "object": "Rate", "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_f82ddf699f31400bbe86c21663960619", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_fd7abde0253b47bb9fe72b3bb1c2d377", + "object": "Rate", "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_f82ddf699f31400bbe86c21663960619", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_fab33a37fac311efb36e3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": + "2025-03-06T19:48:30+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_54b57d4bf34b11edaed03cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:18+00:00", "updated_at": "2023-05-15T18:07:18+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_fab49ddbfac311efb36f3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_fab33a37fac311efb36e3cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "return_address": {"id": "adr_54b71eabf34b11eda31dac1f6bc72124", "object": - "Address", "created_at": "2023-05-15T18:07:18+00:00", "updated_at": "2023-05-15T18:07:18+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + {}}, "forms": [], "fees": [], "object": "Shipment"}, {"id": "shp_2a958445977543d493c211e0b64b35b2", + "created_at": "2025-03-06T19:48:30Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:30Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": null, "from_address": {"id": + "adr_fab49ddbfac311efb36f3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:18Z", "is_return": false, - "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-15T18:07:18Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_54b71eabf34b11eda31dac1f6bc72124", "object": "Address", "created_at": - "2023-05-15T18:07:18+00:00", "updated_at": "2023-05-15T18:07:18+00:00", "name": + {}}, "insurance": null, "order_id": "order_26702f7c8a5e401faeb65501179e3262", + "parcel": {"id": "prcl_e4ea2d6d1a784b11ac76803526a5c550", "object": "Parcel", + "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_f38f9649d9e544fb859c5afb773ba977", + "object": "Rate", "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_2a958445977543d493c211e0b64b35b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_80a11d13d32b4bb99432012572913ecf", + "object": "Rate", "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_2a958445977543d493c211e0b64b35b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_57a579e7ab4c4ae0b584d9b753c0ad7d", + "object": "Rate", "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2a958445977543d493c211e0b64b35b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_fab33a37fac311efb36e3cecef1b359e", + "object": "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": + "2025-03-06T19:48:30+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_fab49ddbfac311efb36f3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_1d2fa8779de344899437cf7d61a18653", - "parcel": {"id": "prcl_8ea621b8962f4e6dba1d93cb0f6b87f9", "object": "Parcel", - "created_at": "2023-05-15T18:07:18Z", "updated_at": "2023-05-15T18:07:18Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_86e5084cc3b041e2b6c5db7e4d900669", - "object": "Rate", "created_at": "2023-05-15T18:07:19Z", "updated_at": "2023-05-15T18:07:19Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_05448c2a640e49b4bb71aba9943506d8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_245df40281e04f538b28730cbd01c3cd", - "object": "Rate", "created_at": "2023-05-15T18:07:19Z", "updated_at": "2023-05-15T18:07:19Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_05448c2a640e49b4bb71aba9943506d8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8109c0a01597402a99271094ed5bb96b", - "object": "Rate", "created_at": "2023-05-15T18:07:19Z", "updated_at": "2023-05-15T18:07:19Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_05448c2a640e49b4bb71aba9943506d8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_7c0e93e3f5564f9ab3e4b7d51cac76c3", - "object": "Rate", "created_at": "2023-05-15T18:07:19Z", "updated_at": "2023-05-15T18:07:19Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_05448c2a640e49b4bb71aba9943506d8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_54b57d4bf34b11edaed03cecef1b359e", "object": - "Address", "created_at": "2023-05-15T18:07:18+00:00", "updated_at": "2023-05-15T18:07:18+00:00", + {}}, "buyer_address": {"id": "adr_fab33a37fac311efb36e3cecef1b359e", "object": + "Address", "created_at": "2025-03-06T19:48:30+00:00", "updated_at": "2025-03-06T19:48:30+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_54b71eabf34b11eda31dac1f6bc72124", - "object": "Address", "created_at": "2023-05-15T18:07:18+00:00", "updated_at": - "2023-05-15T18:07:18+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_54b57d4bf34b11edaed03cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:18+00:00", "updated_at": "2023-05-15T18:07:18+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_05448c2a640e49b4bb71aba9943506d8", - "object": "Shipment"}], "rates": [{"id": "rate_86e5084cc3b041e2b6c5db7e4d900669", + {}}, "forms": [], "fees": [], "object": "Shipment"}], "rates": [{"id": "rate_cba7e0a3d7124d2ba816ea612d55986f", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_05448c2a640e49b4bb71aba9943506d8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_245df40281e04f538b28730cbd01c3cd", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "ParcelSelect", "carrier": - "USPS", "rate": "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": - "USD", "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 5, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 5, "shipment_id": "shp_05448c2a640e49b4bb71aba9943506d8", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8109c0a01597402a99271094ed5bb96b", - "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": + "service": "Priority", "carrier": "USPS", "rate": "15.64", "currency": "USD", + "retail_rate": "22.55", "retail_currency": "USD", "list_rate": "17.41", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_05448c2a640e49b4bb71aba9943506d8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_7c0e93e3f5564f9ab3e4b7d51cac76c3", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "First", "carrier": "USPS", - "rate": "6.07", "currency": "USD", "retail_rate": "6.07", "retail_currency": - "USD", "list_rate": "6.07", "list_currency": "USD", "billing_type": "easypost", + "shp_f82ddf699f31400bbe86c21663960619", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_9aae4ae3164b4d2bb79efbf307e48725", "object": "Rate", "created_at": + null, "updated_at": null, "mode": "test", "service": "GroundAdvantage", "carrier": + "USPS", "rate": "11.74", "currency": "USD", "retail_rate": "18.40", "retail_currency": + "USD", "list_rate": "13.26", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 3, "shipment_id": "shp_05448c2a640e49b4bb71aba9943506d8", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_1d2fa8779de344899437cf7d61a18653", - "object": "Order"}' + "est_delivery_days": 3, "shipment_id": "shp_f82ddf699f31400bbe86c21663960619", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_fd7abde0253b47bb9fe72b3bb1c2d377", + "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", + "service": "Express", "carrier": "USPS", "rate": "72.55", "currency": "USD", + "retail_rate": "83.25", "retail_currency": "USD", "list_rate": "72.55", "list_currency": + "USD", "billing_type": "easypost", "delivery_days": 1, "delivery_date": null, + "delivery_date_guaranteed": false, "est_delivery_days": 1, "shipment_id": + "shp_f82ddf699f31400bbe86c21663960619", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], + "id": "order_26702f7c8a5e401faeb65501179e3262", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '11092' + - '12448' content-type: - application/json; charset=utf-8 - etag: - - W/"6336f13e0faad97206c8240f19fc3d61" expires: - '0' location: - - /api/v2/orders/order_1d2fa8779de344899437cf7d61a18653 + - /api/v2/orders/order_26702f7c8a5e401faeb65501179e3262 pragma: - no-cache referrer-policy: @@ -203,20 +213,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2d4646274d6e787513f0024a559 + - 8e8eb62967c9fc0ee2b97b3700189acd x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.876244' + - '0.337334' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_order_retrieve.yaml b/tests/cassettes/test_order_retrieve.yaml index ab96bbe1..d8d4a96d 100644 --- a/tests/cassettes/test_order_retrieve.yaml +++ b/tests/cassettes/test_order_retrieve.yaml @@ -5,13 +5,8 @@ interactions: "country": "US", "email": "test@example.com", "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "shipments": [{"from_address": {"name": "Jack Sparrow", - "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", - "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "to_address": {"name": "Elizabeth Swan", "street1": - "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": - "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": - 10, "width": 8, "height": 4, "weight": 15.4}}]}}' + "phone": "5555555555"}, "shipments": [{"parcel": {"weight": 10.2}}, {"parcel": + {"weight": 17.5}}]}}' headers: Accept: - '*/*' @@ -20,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '925' + - '501' Content-Type: - application/json authorization: @@ -31,163 +26,178 @@ interactions: uri: https://api.easypost.com/v2/orders response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:15Z", - "customs_info": null, "from_address": {"id": "adr_521a9d9bf34b11eda4433cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": - "2023-05-15T18:07:14+00:00", "name": "Jack Sparrow", "company": null, "street1": + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:27Z", + "updated_at": "2025-03-06T19:48:27Z", "customs_info": null, "from_address": + {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipments": [{"id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "created_at": + "2025-03-06T19:48:27Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": null, "updated_at": + "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_521948cff34b11eda969ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": - "2023-05-15T18:07:14+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_2d074a2409d84d28b4d76e9c4288931b", "parcel": {"id": "prcl_b2c5e6eacb884263b430db2ff32acd34", + "object": "Parcel", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_679c43ffd32c4a67a07c06c73c8db0fd", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6d80f0247620488295d4e0972f9df86b", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c846a472ccb04471b81fa5ea9fc14952", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": + "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_521948cff34b11eda969ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "return_address": {"id": "adr_521a9d9bf34b11eda4433cecef1b359e", "object": - "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + {}}, "forms": [], "fees": [], "object": "Shipment"}, {"id": "shp_585a2e0c08944a61bee1557f6f8b9fef", + "created_at": "2025-03-06T19:48:27Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": null, "from_address": {"id": + "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:14Z", "is_return": false, - "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-15T18:07:14Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_521a9d9bf34b11eda4433cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", "name": + {}}, "insurance": null, "order_id": "order_2d074a2409d84d28b4d76e9c4288931b", + "parcel": {"id": "prcl_4c3997e0861e436081894618321b8f25", "object": "Parcel", + "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_8392bed93eff422fb388f812e1d28261", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_585a2e0c08944a61bee1557f6f8b9fef", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_96c36947f51048eeb04398a125b0326c", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_585a2e0c08944a61bee1557f6f8b9fef", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_3f4e71c05f0a4b599e14ecd886825309", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_585a2e0c08944a61bee1557f6f8b9fef", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": + "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_99642987af7444139e44566e34cf698a", - "parcel": {"id": "prcl_ae2a719e67c84b41adad21483cd10343", "object": "Parcel", - "created_at": "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:14Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_48082a55b5594cb1affe23b440eca468", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b5d0106baa6d4d7ebd35ccb5c8651856", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f02c63983dca4fe1b52a9b474371d225", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8d976f3bc3c0464a9493135baa4e435d", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_521948cff34b11eda969ac1f6bc7b362", "object": - "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", + {}}, "buyer_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_521a9d9bf34b11eda4433cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": - "2023-05-15T18:07:14+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_521948cff34b11eda969ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", - "object": "Shipment"}], "rates": [{"id": "rate_48082a55b5594cb1affe23b440eca468", + {}}, "forms": [], "fees": [], "object": "Shipment"}], "rates": [{"id": "rate_679c43ffd32c4a67a07c06c73c8db0fd", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_b5d0106baa6d4d7ebd35ccb5c8651856", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "ParcelSelect", "carrier": - "USPS", "rate": "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": - "USD", "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 5, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 5, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f02c63983dca4fe1b52a9b474371d225", + "service": "GroundAdvantage", "carrier": "USPS", "rate": "11.74", "currency": + "USD", "retail_rate": "18.40", "retail_currency": "USD", "list_rate": "13.26", + "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": + null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": + "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_6d80f0247620488295d4e0972f9df86b", "object": "Rate", "created_at": + null, "updated_at": null, "mode": "test", "service": "Express", "carrier": + "USPS", "rate": "72.55", "currency": "USD", "retail_rate": "83.25", "retail_currency": + "USD", "list_rate": "72.55", "list_currency": "USD", "billing_type": "easypost", + "delivery_days": 1, "delivery_date": null, "delivery_date_guaranteed": false, + "est_delivery_days": 1, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c846a472ccb04471b81fa5ea9fc14952", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": + "service": "Priority", "carrier": "USPS", "rate": "15.64", "currency": "USD", + "retail_rate": "22.55", "retail_currency": "USD", "list_rate": "17.41", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_8d976f3bc3c0464a9493135baa4e435d", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "First", "carrier": "USPS", - "rate": "6.07", "currency": "USD", "retail_rate": "6.07", "retail_currency": - "USD", "list_rate": "6.07", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 3, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_99642987af7444139e44566e34cf698a", - "object": "Order"}' + "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], + "id": "order_2d074a2409d84d28b4d76e9c4288931b", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '11092' + - '12448' content-type: - application/json; charset=utf-8 - etag: - - W/"bb29d2b77f6ec171591ac525cf012aeb" expires: - '0' location: - - /api/v2/orders/order_99642987af7444139e44566e34cf698a + - /api/v2/orders/order_2d074a2409d84d28b4d76e9c4288931b pragma: - no-cache referrer-policy: @@ -203,20 +213,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2cd646274d2e78751250024a309 + - 8e8eb62a67c9fc0ae2b97b340018967a x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb33nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.716187' + - '0.327880' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -236,150 +246,177 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/orders/order_99642987af7444139e44566e34cf698a + uri: https://api.easypost.com/v2/orders/order_2d074a2409d84d28b4d76e9c4288931b response: body: - string: '{"mode": "test", "reference": null, "is_return": false, "options": - {"currency": "USD", "payment": {"type": "SENDER"}}, "messages": [{"carrier": - "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", "type": - "rate_error", "message": "Unauthorized. Please check credentials and try again"}, - {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "created_at": "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:15Z", - "customs_info": null, "from_address": {"id": "adr_521a9d9bf34b11eda4433cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": - "2023-05-15T18:07:14+00:00", "name": "Jack Sparrow", "company": null, "street1": + string: '{"mode": "test", "reference": "", "is_return": false, "options": {"currency": + "USD", "payment": {"type": "SENDER"}}, "messages": [], "created_at": "2025-03-06T19:48:27Z", + "updated_at": "2025-03-06T19:48:27Z", "customs_info": null, "from_address": + {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "to_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "shipments": [{"id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "created_at": + "2025-03-06T19:48:27Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": null, "updated_at": + "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:27+00:00", "updated_at": + "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "to_address": {"id": "adr_521948cff34b11eda969ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": - "2023-05-15T18:07:14+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + "order_2d074a2409d84d28b4d76e9c4288931b", "parcel": {"id": "prcl_b2c5e6eacb884263b430db2ff32acd34", + "object": "Parcel", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 10.2, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_679c43ffd32c4a67a07c06c73c8db0fd", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.21", + "currency": "USD", "retail_rate": "7.00", "retail_currency": "USD", "list_rate": + "5.21", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6d80f0247620488295d4e0972f9df86b", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c846a472ccb04471b81fa5ea9fc14952", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": + "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_521948cff34b11eda969ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "return_address": {"id": "adr_521a9d9bf34b11eda4433cecef1b359e", "object": - "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + {}}, "forms": [], "fees": [], "object": "Shipment"}, {"id": "shp_585a2e0c08944a61bee1557f6f8b9fef", + "created_at": "2025-03-06T19:48:27Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-06T19:48:27Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": null, "from_address": {"id": + "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "shipments": [{"created_at": "2023-05-15T18:07:14Z", "is_return": false, - "messages": [], "mode": "test", "options": {"currency": "USD", "payment": - {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", - "tracking_code": null, "updated_at": "2023-05-15T18:07:14Z", "batch_id": null, - "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_521a9d9bf34b11eda4433cecef1b359e", "object": "Address", "created_at": - "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", "name": + {}}, "insurance": null, "order_id": "order_2d074a2409d84d28b4d76e9c4288931b", + "parcel": {"id": "prcl_4c3997e0861e436081894618321b8f25", "object": "Parcel", + "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "length": null, "width": null, "height": null, "predefined_package": null, + "weight": 17.5, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_8392bed93eff422fb388f812e1d28261", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "38.40", + "currency": "USD", "retail_rate": "44.15", "retail_currency": "USD", "list_rate": + "38.40", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_585a2e0c08944a61bee1557f6f8b9fef", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_96c36947f51048eeb04398a125b0326c", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "8.22", + "currency": "USD", "retail_rate": "12.65", "retail_currency": "USD", "list_rate": + "9.07", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_585a2e0c08944a61bee1557f6f8b9fef", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_3f4e71c05f0a4b599e14ecd886825309", + "object": "Rate", "created_at": "2025-03-06T19:48:27Z", "updated_at": "2025-03-06T19:48:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.53", + "currency": "USD", "retail_rate": "11.40", "retail_currency": "USD", "list_rate": + "8.05", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_585a2e0c08944a61bee1557f6f8b9fef", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": + "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_f8b671e2fac311efbcd2ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:27+00:00", "updated_at": "2025-03-06T19:48:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": "order_99642987af7444139e44566e34cf698a", - "parcel": {"id": "prcl_ae2a719e67c84b41adad21483cd10343", "object": "Parcel", - "created_at": "2023-05-15T18:07:14Z", "updated_at": "2023-05-15T18:07:14Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_48082a55b5594cb1affe23b440eca468", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b5d0106baa6d4d7ebd35ccb5c8651856", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f02c63983dca4fe1b52a9b474371d225", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8d976f3bc3c0464a9493135baa4e435d", - "object": "Rate", "created_at": "2023-05-15T18:07:15Z", "updated_at": "2023-05-15T18:07:15Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_521948cff34b11eda969ac1f6bc7b362", "object": - "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", + {}}, "buyer_address": {"id": "adr_f8b49794fac311efbcd0ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-06T19:48:26+00:00", "updated_at": "2025-03-06T19:48:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_521a9d9bf34b11eda4433cecef1b359e", - "object": "Address", "created_at": "2023-05-15T18:07:14+00:00", "updated_at": - "2023-05-15T18:07:14+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_521948cff34b11eda969ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T18:07:14+00:00", "updated_at": "2023-05-15T18:07:14+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", - "object": "Shipment"}], "rates": [{"id": "rate_48082a55b5594cb1affe23b440eca468", + {}}, "forms": [], "fees": [], "object": "Shipment"}], "rates": [{"id": "rate_679c43ffd32c4a67a07c06c73c8db0fd", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_b5d0106baa6d4d7ebd35ccb5c8651856", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "ParcelSelect", "carrier": - "USPS", "rate": "6.76", "currency": "USD", "retail_rate": "7.75", "retail_currency": - "USD", "list_rate": "7.75", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 5, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 5, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f02c63983dca4fe1b52a9b474371d225", + "service": "GroundAdvantage", "carrier": "USPS", "rate": "11.74", "currency": + "USD", "retail_rate": "18.40", "retail_currency": "USD", "list_rate": "13.26", + "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": + null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": + "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, + {"id": "rate_6d80f0247620488295d4e0972f9df86b", "object": "Rate", "created_at": + null, "updated_at": null, "mode": "test", "service": "Express", "carrier": + "USPS", "rate": "72.55", "currency": "USD", "retail_rate": "83.25", "retail_currency": + "USD", "list_rate": "72.55", "list_currency": "USD", "billing_type": "easypost", + "delivery_days": 1, "delivery_date": null, "delivery_date_guaranteed": false, + "est_delivery_days": 1, "shipment_id": "shp_080c36deaf4e46288c6ab4dd7541c0ff", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c846a472ccb04471b81fa5ea9fc14952", "object": "Rate", "created_at": null, "updated_at": null, "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": + "service": "Priority", "carrier": "USPS", "rate": "15.64", "currency": "USD", + "retail_rate": "22.55", "retail_currency": "USD", "list_rate": "17.41", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_5ee497857f4d4f23ab5ed940ebc124c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_8d976f3bc3c0464a9493135baa4e435d", "object": "Rate", "created_at": - null, "updated_at": null, "mode": "test", "service": "First", "carrier": "USPS", - "rate": "6.07", "currency": "USD", "retail_rate": "6.07", "retail_currency": - "USD", "list_rate": "6.07", "list_currency": "USD", "billing_type": "easypost", - "delivery_days": 3, "delivery_date": null, "delivery_date_guaranteed": false, - "est_delivery_days": 3, "shipment_id": "shp_5ee497857f4d4f23ab5ed940ebc124c2", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], "id": "order_99642987af7444139e44566e34cf698a", - "object": "Order"}' + "shp_080c36deaf4e46288c6ab4dd7541c0ff", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], + "id": "order_2d074a2409d84d28b4d76e9c4288931b", "object": "Order"}' headers: cache-control: - private, no-cache, no-store content-length: - - '10103' + - '12448' content-type: - application/json; charset=utf-8 - etag: - - W/"3db3cbdf5d75954b0e0a2b57ac9dff56" expires: - '0' pragma: @@ -397,20 +434,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3f02a2cd646274d3e78751250024a36c + - 8e8eb62a67c9fc0be2b97b34001896df x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.119046' + - '0.097449' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_parcel_create.yaml b/tests/cassettes/test_parcel_create.yaml index 91a9b2d0..bcc7646f 100644 --- a/tests/cassettes/test_parcel_create.yaml +++ b/tests/cassettes/test_parcel_create.yaml @@ -20,8 +20,8 @@ interactions: uri: https://api.easypost.com/v2/parcels response: body: - string: '{"id": "prcl_d751133015c84411adcd073cf5c235b8", "object": "Parcel", - "created_at": "2023-05-15T21:03:26Z", "updated_at": "2023-05-15T21:03:26Z", + string: '{"id": "prcl_5d81cd2ad3644052943064bf570d753e", "object": "Parcel", + "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": 15.4, "mode": "test"}' headers: @@ -31,12 +31,10 @@ interactions: - '229' content-type: - application/json; charset=utf-8 - etag: - - W/"f50be1b80cfb0538b6c397ab8498ec12" expires: - '0' location: - - /api/prcl_d751133015c84411adcd073cf5c235b8/parcels + - /api/v2/parcels/prcl_5d81cd2ad3644052943064bf570d753e pragma: - no-cache referrer-policy: @@ -47,26 +45,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 36ec0a9264629e1ee2b976d20033d474 + - 8e8eb62967c9fc0ee2b97b3800189b8b x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.029316' + - '0.028550' x-version-label: - - easypost-202305151948-2ffaad026d-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_parcel_retrieve.yaml b/tests/cassettes/test_parcel_retrieve.yaml index 8f13bb9e..ac527aef 100644 --- a/tests/cassettes/test_parcel_retrieve.yaml +++ b/tests/cassettes/test_parcel_retrieve.yaml @@ -20,8 +20,8 @@ interactions: uri: https://api.easypost.com/v2/parcels response: body: - string: '{"id": "prcl_7777c681ff90424f9ac2ee9b05c3e791", "object": "Parcel", - "created_at": "2023-05-15T21:03:26Z", "updated_at": "2023-05-15T21:03:26Z", + string: '{"id": "prcl_7c7ea4fdff3d49f5a0ba5a4cf8c50d64", "object": "Parcel", + "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": 15.4, "mode": "test"}' headers: @@ -31,12 +31,10 @@ interactions: - '229' content-type: - application/json; charset=utf-8 - etag: - - W/"4f084e94361e31e106f58be10a1ad081" expires: - '0' location: - - /api/prcl_7777c681ff90424f9ac2ee9b05c3e791/parcels + - /api/v2/parcels/prcl_7c7ea4fdff3d49f5a0ba5a4cf8c50d64 pragma: - no-cache referrer-policy: @@ -47,27 +45,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 44e495b364629e1ee2b976d3003563cd + - 8e8eb62967c9fc0ee2b97b3900189bd2 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.041070' + - '0.031217' x-version-label: - - easypost-202305151948-2ffaad026d-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -87,11 +83,11 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/parcels/prcl_7777c681ff90424f9ac2ee9b05c3e791 + uri: https://api.easypost.com/v2/parcels/prcl_7c7ea4fdff3d49f5a0ba5a4cf8c50d64 response: body: - string: '{"id": "prcl_7777c681ff90424f9ac2ee9b05c3e791", "object": "Parcel", - "created_at": "2023-05-15T21:03:26Z", "updated_at": "2023-05-15T21:03:26Z", + string: '{"id": "prcl_7c7ea4fdff3d49f5a0ba5a4cf8c50d64", "object": "Parcel", + "created_at": "2025-03-06T19:48:30Z", "updated_at": "2025-03-06T19:48:30Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": 15.4, "mode": "test"}' headers: @@ -101,8 +97,6 @@ interactions: - '229' content-type: - application/json; charset=utf-8 - etag: - - W/"4f084e94361e31e106f58be10a1ad081" expires: - '0' pragma: @@ -120,20 +114,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495b364629e1fe2b976d3003563f5 + - 8e8eb62967c9fc0ee2b97b3900189bf0 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.018883' + - '0.021935' x-version-label: - - easypost-202305151948-2ffaad026d-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_pickup_all.yaml b/tests/cassettes/test_pickup_all.yaml index e6650d63..1b1c088d 100644 --- a/tests/cassettes/test_pickup_all.yaml +++ b/tests/cassettes/test_pickup_all.yaml @@ -16,91 +16,73 @@ interactions: uri: https://api.easypost.com/v2/pickups?page_size=5 response: body: - string: '{"pickups": [{"id": "pickup_c7ab5738c30444868e61f0d3fef0ff95", "object": - "Pickup", "created_at": "2023-05-15T21:50:06Z", "updated_at": "2023-05-15T21:50:06Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"pickups": [{"id": "pickup_3cafbbc9dae14281a0c76848a9419cb1", "object": + "Pickup", "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_74406669f36a11edb3daac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T21:50:06+00:00", "updated_at": "2023-05-15T21:50:06+00:00", "name": + "adr_a6a0caccfb7311efb5feac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:00+00:00", "updated_at": "2025-03-07T16:46:00+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:50:06Z", - "updated_at": "2023-05-15T21:50:06Z", "carrier": "USPS", "pickup_id": "pickup_c7ab5738c30444868e61f0d3fef0ff95", - "id": "pickuprate_a1a991d35f9f4688a290e08548bb8755", "object": "PickupRate"}]}, - {"id": "pickup_dce2c5e15e9547f199c75e1b4a92725c", "object": "Pickup", "created_at": - "2023-05-15T21:50:01Z", "updated_at": "2023-05-15T21:50:04Z", "mode": "test", - "status": "canceled", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": "WTC62976246", "address": - {"id": "adr_71a8e849f36a11ed82c8ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-15T21:50:01+00:00", "updated_at": "2023-05-15T21:50:01+00:00", "name": + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:02Z", + "updated_at": "2025-03-07T16:46:02Z", "carrier": "USPS", "pickup_id": "pickup_3cafbbc9dae14281a0c76848a9419cb1", + "id": "pickuprate_91820d140f3f4e9ebfa2e709688017c5", "object": "PickupRate"}]}, + {"id": "pickup_62ca1c7c91b843888ff982502c8018b7", "object": "Pickup", "created_at": + "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", "mode": "test", + "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": + "adr_ffc9a077fac311efb6293cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:38+00:00", "updated_at": "2025-03-06T19:48:38+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:50:02Z", - "updated_at": "2023-05-15T21:50:02Z", "carrier": "USPS", "pickup_id": "pickup_dce2c5e15e9547f199c75e1b4a92725c", - "id": "pickuprate_8888d57350794b868dde14933836cf2b", "object": "PickupRate"}]}, - {"id": "pickup_5460a38ba2cd4d889d2e01958584a74e", "object": "Pickup", "created_at": - "2023-05-15T21:49:58Z", "updated_at": "2023-05-15T21:50:00Z", "mode": "test", - "status": "scheduled", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": "WTC62976244", "address": - {"id": "adr_6f9e2bd2f36a11eda045ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:58+00:00", "updated_at": "2023-05-15T21:49:58+00:00", "name": + {}}, "carrier_accounts": [], "pickup_rates": []}, {"id": "pickup_e1cf0a09b64a4160853f4121d6713747", + "object": "Pickup", "created_at": "2025-03-06T19:48:37Z", "updated_at": "2025-03-06T19:48:37Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": + "adr_fefb306bfac311ef9a28ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:37+00:00", "updated_at": "2025-03-06T19:48:37+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:59Z", - "updated_at": "2023-05-15T21:49:59Z", "carrier": "USPS", "pickup_id": "pickup_5460a38ba2cd4d889d2e01958584a74e", - "id": "pickuprate_b884f42434724eabb45d9c70f311e4bf", "object": "PickupRate"}]}, - {"id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", "object": "Pickup", "created_at": - "2023-05-15T21:49:55Z", "updated_at": "2023-05-15T21:49:55Z", "mode": "test", - "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + {}}, "carrier_accounts": [], "pickup_rates": []}, {"id": "pickup_49b84091f140493e8df6d44ec9de856a", + "object": "Pickup", "created_at": "2025-03-06T19:48:36Z", "updated_at": "2025-03-06T19:48:36Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6dfcf608f36a11ed99deac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:55+00:00", "updated_at": "2023-05-15T21:49:55+00:00", "name": + "adr_fe10e26efac311efb51c3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:35+00:00", "updated_at": "2025-03-06T19:48:35+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:56Z", - "updated_at": "2023-05-15T21:49:56Z", "carrier": "USPS", "pickup_id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", - "id": "pickuprate_152867bbc5014534b67be86918ad8b10", "object": "PickupRate"}]}, - {"id": "pickup_0c2c33d249cc4982a1bc78c2c1a8d210", "object": "Pickup", "created_at": - "2023-05-15T21:49:53Z", "updated_at": "2023-05-15T21:49:53Z", "mode": "test", - "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + {}}, "carrier_accounts": [], "pickup_rates": []}, {"id": "pickup_f4b950fb123b412282de960603a832c4", + "object": "Pickup", "created_at": "2025-03-06T19:48:34Z", "updated_at": "2025-03-06T19:48:34Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6c6df1a4f36a11ed94ac3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T21:49:52+00:00", "updated_at": "2023-05-15T21:49:52+00:00", "name": + "adr_fd324b43fac311ef93cdac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:34+00:00", "updated_at": "2025-03-06T19:48:34+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:54Z", - "updated_at": "2023-05-15T21:49:54Z", "carrier": "USPS", "pickup_id": "pickup_0c2c33d249cc4982a1bc78c2c1a8d210", - "id": "pickuprate_9cb256a78fbc459483c538f961df8ee1", "object": "PickupRate"}]}], - "has_more": true}' + {}}, "carrier_accounts": [], "pickup_rates": []}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '5840' + - '4691' content-type: - application/json; charset=utf-8 - etag: - - W/"ec77104841c0adabf3a2344f12760f72" expires: - '0' pragma: @@ -118,20 +100,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3ecd17966462a949e2b98c5a0008a47a + - 9087f27567cb22cae2aaba010044227b x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb2nuq 99aac35317 x-runtime: - - '0.156798' + - '0.285083' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_pickup_buy.yaml b/tests/cassettes/test_pickup_buy.yaml index bb352867..c5af894a 100644 --- a/tests/cassettes/test_pickup_buy.yaml +++ b/tests/cassettes/test_pickup_buy.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-15T21:49:57Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210071015", "updated_at": "2023-05-15T21:49:57Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_6ef113aff36a11ed9d9dac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:57+00:00", "updated_at": "2023-05-15T21:49:57+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_cf8b315bf7614419b20e0ded093bddc9", - "object": "Parcel", "created_at": "2023-05-15T21:49:57Z", "updated_at": "2023-05-15T21:49:57Z", + string: '{"id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "created_at": "2025-03-07T16:46:07Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505626", "updated_at": + "2025-03-07T16:46:07Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_aa69c593fb7311ef971b3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:07+00:00", "updated_at": + "2025-03-07T16:46:07+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_d65c73ef0b0741b683c85ae149b4c615", "object": + "Parcel", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_ad9c837d5b53414dbac2979c2a243e9d", - "created_at": "2023-05-15T21:49:57Z", "updated_at": "2023-05-15T21:49:57Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-15T21:49:57Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f91a9e01da6c4e378d2dce661c4c6911", + "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:07Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230515/3905bc1b882d4c65ac324f4a451921a6.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8534b38912c20459a8afb5b43a2a38f93.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_59f770a5b8bb4f5089a1c21f3931325c", "object": - "Rate", "created_at": "2023-05-15T21:49:57Z", "updated_at": "2023-05-15T21:49:57Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_481204234455466cbca4f9ad3d7424c6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_26589708ab134a6da8b581143b164fff", - "object": "Rate", "created_at": "2023-05-15T21:49:57Z", "updated_at": "2023-05-15T21:49:57Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_481204234455466cbca4f9ad3d7424c6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_06e57e8730d04128a6fbaa44f8765199", - "object": "Rate", "created_at": "2023-05-15T21:49:57Z", "updated_at": "2023-05-15T21:49:57Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_481204234455466cbca4f9ad3d7424c6", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a40e00a539bd4ff0a49a48b058412b57", - "object": "Rate", "created_at": "2023-05-15T21:49:57Z", "updated_at": "2023-05-15T21:49:57Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_481204234455466cbca4f9ad3d7424c6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_a40e00a539bd4ff0a49a48b058412b57", - "object": "Rate", "created_at": "2023-05-15T21:49:57Z", "updated_at": "2023-05-15T21:49:57Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_481204234455466cbca4f9ad3d7424c6", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_d3a6f11ebf5c496e994261044a4c0893", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210071015", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-15T21:49:58Z", "updated_at": - "2023-05-15T21:49:58Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_481204234455466cbca4f9ad3d7424c6", "carrier": "USPS", + null}, "rates": [{"id": "rate_59faed8017f04a3a929537ddda74d7fb", "object": + "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_feb24755f1794a458896fecb8a014f3e", + "object": "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9f7170c31a6a4cd4b07a7ee5c114aadc", + "object": "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_9f7170c31a6a4cd4b07a7ee5c114aadc", "object": + "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_5b5388ca5edc4c2188e41862ace7cbee", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505626", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:07Z", + "updated_at": "2025-03-07T16:46:07Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrX2QzYTZmMTFlYmY1YzQ5NmU5OTQyNjEwNDRhNGMwODkz"}, - "to_address": {"id": "adr_6eeed0eff36a11edbbafac1f6bc7bdc6", "object": "Address", - "created_at": "2023-05-15T21:49:57+00:00", "updated_at": "2023-05-15T21:49:57+00:00", + "https://track.easypost.com/djE6dHJrXzViNTM4OGNhNWVkYzRjMjE4OGU0MTg2MmFjZTdjYmVl"}, + "to_address": {"id": "adr_aa670212fb7311ef9ddfac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:46:07+00:00", "updated_at": "2025-03-07T16:46:07+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_6ef113aff36a11ed9d9dac1f6bc7b362", - "object": "Address", "created_at": "2023-05-15T21:49:57+00:00", "updated_at": - "2023-05-15T21:49:57+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_aa69c593fb7311ef971b3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:07+00:00", "updated_at": + "2025-03-07T16:46:07+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_6eeed0eff36a11edbbafac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-15T21:49:57+00:00", "updated_at": "2023-05-15T21:49:57+00:00", "name": + "adr_aa670212fb7311ef9ddfac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:07+00:00", "updated_at": "2025-03-07T16:46:07+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_481204234455466cbca4f9ad3d7424c6", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"195c16e126f90a0d0e7f7381e879fd84" expires: - '0' location: - - /api/v2/shipments/shp_481204234455466cbca4f9ad3d7424c6 + - /api/v2/shipments/shp_2d1487afd0f541a4bcf9fecc1b02b28d pragma: - no-cache referrer-policy: @@ -141,28 +133,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 477e8d806462a905e2b98c360035a430 + - 6eaaf8ff67cb22cee2aaba1b000acefd x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.946397' + - '1.045469' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -172,8 +161,8 @@ interactions: body: '{"pickup": {"address": {"name": "Jack Sparrow", "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "min_datetime": - "2023-05-17", "max_datetime": "2023-05-17", "instructions": "Pickup at front - door", "shipment": {"id": "shp_481204234455466cbca4f9ad3d7424c6"}}}' + "2025-03-08", "max_datetime": "2025-03-08", "instructions": "Pickup at front + door", "shipment": {"id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d"}}}' headers: Accept: - '*/*' @@ -193,21 +182,21 @@ interactions: uri: https://api.easypost.com/v2/pickups response: body: - string: '{"id": "pickup_5460a38ba2cd4d889d2e01958584a74e", "object": "Pickup", - "created_at": "2023-05-15T21:49:58Z", "updated_at": "2023-05-15T21:49:58Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"id": "pickup_97eb98f4c2004ede9f30e26ec4f63233", "object": "Pickup", + "created_at": "2025-03-07T16:46:08Z", "updated_at": "2025-03-07T16:46:08Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6f9e2bd2f36a11eda045ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:58+00:00", "updated_at": "2023-05-15T21:49:58+00:00", "name": + "adr_aafa0799fb7311efb8bbac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:08+00:00", "updated_at": "2025-03-07T16:46:08+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:59Z", - "updated_at": "2023-05-15T21:49:59Z", "carrier": "USPS", "pickup_id": "pickup_5460a38ba2cd4d889d2e01958584a74e", - "id": "pickuprate_b884f42434724eabb45d9c70f311e4bf", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:08Z", + "updated_at": "2025-03-07T16:46:08Z", "carrier": "USPS", "pickup_id": "pickup_97eb98f4c2004ede9f30e26ec4f63233", + "id": "pickuprate_dd219c18c36a48b295f8d8c5d5247906", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -215,8 +204,6 @@ interactions: - '1157' content-type: - application/json; charset=utf-8 - etag: - - W/"5ca2b55389bce3ef35a8c51e64c765a0" expires: - '0' pragma: @@ -234,21 +221,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 477e8d806462a906e2b98c360035a478 + - 6eaaf8ff67cb22cfe2aaba1b000ad0d9 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.764613' + - '1.051583' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -272,24 +258,24 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/pickups/pickup_5460a38ba2cd4d889d2e01958584a74e/buy + uri: https://api.easypost.com/v2/pickups/pickup_97eb98f4c2004ede9f30e26ec4f63233/buy response: body: - string: '{"id": "pickup_5460a38ba2cd4d889d2e01958584a74e", "object": "Pickup", - "created_at": "2023-05-15T21:49:58Z", "updated_at": "2023-05-15T21:50:00Z", + string: '{"id": "pickup_97eb98f4c2004ede9f30e26ec4f63233", "object": "Pickup", + "created_at": "2025-03-07T16:46:08Z", "updated_at": "2025-03-07T16:46:10Z", "mode": "test", "status": "scheduled", "reference": null, "min_datetime": - "2023-05-17T00:00:00Z", "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": + "2025-03-08T00:00:00Z", "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": - "WTC62976244", "address": {"id": "adr_6f9e2bd2f36a11eda045ac1f6bc7b362", "object": - "Address", "created_at": "2023-05-15T21:49:58+00:00", "updated_at": "2023-05-15T21:49:58+00:00", + "WTC65024896", "address": {"id": "adr_aafa0799fb7311efb8bbac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:08+00:00", "updated_at": "2025-03-07T16:46:08+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:59Z", - "updated_at": "2023-05-15T21:49:59Z", "carrier": "USPS", "pickup_id": "pickup_5460a38ba2cd4d889d2e01958584a74e", - "id": "pickuprate_b884f42434724eabb45d9c70f311e4bf", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:08Z", + "updated_at": "2025-03-07T16:46:08Z", "carrier": "USPS", "pickup_id": "pickup_97eb98f4c2004ede9f30e26ec4f63233", + "id": "pickuprate_dd219c18c36a48b295f8d8c5d5247906", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -297,8 +283,6 @@ interactions: - '1168' content-type: - application/json; charset=utf-8 - etag: - - W/"ee2fa752f03d2ae85073cf3afb0ad3d1" expires: - '0' pragma: @@ -316,21 +300,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 477e8d806462a907e2b98c360035a4a2 + - 6eaaf8ff67cb22d1e2aaba1b000ad22a x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb3wdc 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.983197' + - '1.813744' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_pickup_cancel.yaml b/tests/cassettes/test_pickup_cancel.yaml index 1cacc851..ef53c5e0 100644 --- a/tests/cassettes/test_pickup_cancel.yaml +++ b/tests/cassettes/test_pickup_cancel.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T22:16:57Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210420189", "updated_at": "2023-05-16T22:16:58Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_5f549f97f43711ed8c103cecef1b359e", "object": "Address", "created_at": - "2023-05-16T22:16:57+00:00", "updated_at": "2023-05-16T22:16:57+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_3c7c85e785064fd1a449a660b9cde3eb", - "object": "Parcel", "created_at": "2023-05-16T22:16:57Z", "updated_at": "2023-05-16T22:16:57Z", + string: '{"id": "shp_b674aad341c24fe18611019a72ff6e84", "created_at": "2025-03-07T16:46:11Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505633", "updated_at": + "2025-03-07T16:46:11Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_acc761b6fb7311ef98773cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:11+00:00", "updated_at": + "2025-03-07T16:46:11+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_48819d3d4ffc44b898146405288b1b4e", "object": + "Parcel", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_7a54090c13d742d3a2bcba4326f7b78a", - "created_at": "2023-05-16T22:16:58Z", "updated_at": "2023-05-16T22:16:58Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T22:16:58Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_7c4b7267da3f4b13a8834e79a7b0af3a", + "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:11Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/589016f34cdf4997971e7afa7f0edfcb.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8728792ec6b434a14a1f45d8e27c3db93.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_f45d0a1343544a828f1c476cb7033a4c", "object": - "Rate", "created_at": "2023-05-16T22:16:58Z", "updated_at": "2023-05-16T22:16:58Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_a98dcc81667747e59ed9607391eeeed0", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_12aff88bdbde45aaac1fd232d79c68cd", - "object": "Rate", "created_at": "2023-05-16T22:16:58Z", "updated_at": "2023-05-16T22:16:58Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_a98dcc81667747e59ed9607391eeeed0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_a2ca96273f804676950fe037182889fc", "object": "Rate", "created_at": - "2023-05-16T22:16:58Z", "updated_at": "2023-05-16T22:16:58Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_a98dcc81667747e59ed9607391eeeed0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_45e34c35108d4039b5721c8b44c9b421", "object": "Rate", "created_at": - "2023-05-16T22:16:58Z", "updated_at": "2023-05-16T22:16:58Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_a98dcc81667747e59ed9607391eeeed0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_12aff88bdbde45aaac1fd232d79c68cd", - "object": "Rate", "created_at": "2023-05-16T22:16:58Z", "updated_at": "2023-05-16T22:16:58Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_a98dcc81667747e59ed9607391eeeed0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_aed42d9516194cf8a4ddf76e709664eb", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210420189", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T22:16:58Z", "updated_at": - "2023-05-16T22:16:58Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_a98dcc81667747e59ed9607391eeeed0", "carrier": "USPS", + null}, "rates": [{"id": "rate_f74107b724334c1695f76a362d6d1354", "object": + "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c50e7434c2b8494cbc89405e54ee777e", + "object": "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_345992a3bb14453ca8c41069addcbbad", + "object": "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_345992a3bb14453ca8c41069addcbbad", "object": + "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_7ab5213aaf264b53ab2f296d2efc7e73", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505633", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:11Z", + "updated_at": "2025-03-07T16:46:11Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrX2FlZDQyZDk1MTYxOTRjZjhhNGRkZjc2ZTcwOTY2NGVi"}, - "to_address": {"id": "adr_5f525862f43711ed8c0b3cecef1b359e", "object": "Address", - "created_at": "2023-05-16T22:16:57+00:00", "updated_at": "2023-05-16T22:16:58+00:00", + "https://track.easypost.com/djE6dHJrXzdhYjUyMTNhYWYyNjRiNTNhYjJmMjk2ZDJlZmM3ZTcz"}, + "to_address": {"id": "adr_acc16571fb7311ef9f45ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:46:10+00:00", "updated_at": "2025-03-07T16:46:11+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_5f549f97f43711ed8c103cecef1b359e", - "object": "Address", "created_at": "2023-05-16T22:16:57+00:00", "updated_at": - "2023-05-16T22:16:57+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_acc761b6fb7311ef98773cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:11+00:00", "updated_at": + "2025-03-07T16:46:11+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_5f525862f43711ed8c0b3cecef1b359e", "object": "Address", "created_at": - "2023-05-16T22:16:57+00:00", "updated_at": "2023-05-16T22:16:58+00:00", "name": + "adr_acc16571fb7311ef9f45ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:10+00:00", "updated_at": "2025-03-07T16:46:11+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_a98dcc81667747e59ed9607391eeeed0", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"0245a7635feec40e6990db69665e8801" expires: - '0' location: - - /api/v2/shipments/shp_a98dcc81667747e59ed9607391eeeed0 + - /api/v2/shipments/shp_b674aad341c24fe18611019a72ff6e84 pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e7646400d9e78961860045637a + - 6eaaf8ff67cb22d2e2aaba1c000ad494 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.082075' + - '1.032213' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -169,8 +161,8 @@ interactions: body: '{"pickup": {"address": {"name": "Jack Sparrow", "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "min_datetime": - "2023-05-17", "max_datetime": "2023-05-17", "instructions": "Pickup at front - door", "shipment": {"id": "shp_a98dcc81667747e59ed9607391eeeed0"}}}' + "2025-03-08", "max_datetime": "2025-03-08", "instructions": "Pickup at front + door", "shipment": {"id": "shp_b674aad341c24fe18611019a72ff6e84"}}}' headers: Accept: - '*/*' @@ -190,21 +182,21 @@ interactions: uri: https://api.easypost.com/v2/pickups response: body: - string: '{"id": "pickup_c80e64ad84eb4691b32685a00cbe8329", "object": "Pickup", - "created_at": "2023-05-16T22:16:59Z", "updated_at": "2023-05-16T22:16:59Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"id": "pickup_7a497566ff634331bdaffdfe4ab10103", "object": "Pickup", + "created_at": "2025-03-07T16:46:12Z", "updated_at": "2025-03-07T16:46:12Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6004d6a2f43711ed9c4bac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T22:16:58+00:00", "updated_at": "2023-05-16T22:16:58+00:00", "name": + "adr_ad70f202fb7311ef98d43cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:46:12+00:00", "updated_at": "2025-03-07T16:46:12+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-16T22:17:00Z", - "updated_at": "2023-05-16T22:17:00Z", "carrier": "USPS", "pickup_id": "pickup_c80e64ad84eb4691b32685a00cbe8329", - "id": "pickuprate_8946fd2a381842a0895d70a051de4256", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:12Z", + "updated_at": "2025-03-07T16:46:12Z", "carrier": "USPS", "pickup_id": "pickup_7a497566ff634331bdaffdfe4ab10103", + "id": "pickuprate_15fc9bd9aee34bed9acb7776860853dd", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -212,8 +204,6 @@ interactions: - '1157' content-type: - application/json; charset=utf-8 - etag: - - W/"beef27479e5dae273e4399f21a40ed20" expires: - '0' pragma: @@ -231,20 +221,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e7646400dae7896186004563dd + - 6eaaf8ff67cb22d4e2aaba1c000ad5cd x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.460661' + - '0.857474' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -268,24 +258,24 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/pickups/pickup_c80e64ad84eb4691b32685a00cbe8329/buy + uri: https://api.easypost.com/v2/pickups/pickup_7a497566ff634331bdaffdfe4ab10103/buy response: body: - string: '{"id": "pickup_c80e64ad84eb4691b32685a00cbe8329", "object": "Pickup", - "created_at": "2023-05-16T22:16:59Z", "updated_at": "2023-05-16T22:17:02Z", + string: '{"id": "pickup_7a497566ff634331bdaffdfe4ab10103", "object": "Pickup", + "created_at": "2025-03-07T16:46:12Z", "updated_at": "2025-03-07T16:46:13Z", "mode": "test", "status": "scheduled", "reference": null, "min_datetime": - "2023-05-17T00:00:00Z", "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": + "2025-03-08T00:00:00Z", "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": - "WTC62980280", "address": {"id": "adr_6004d6a2f43711ed9c4bac1f6bc7b362", "object": - "Address", "created_at": "2023-05-16T22:16:58+00:00", "updated_at": "2023-05-16T22:16:58+00:00", + "WTC65024918", "address": {"id": "adr_ad70f202fb7311ef98d43cecef1b359e", "object": + "Address", "created_at": "2025-03-07T16:46:12+00:00", "updated_at": "2025-03-07T16:46:12+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-16T22:17:00Z", - "updated_at": "2023-05-16T22:17:00Z", "carrier": "USPS", "pickup_id": "pickup_c80e64ad84eb4691b32685a00cbe8329", - "id": "pickuprate_8946fd2a381842a0895d70a051de4256", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:12Z", + "updated_at": "2025-03-07T16:46:12Z", "carrier": "USPS", "pickup_id": "pickup_7a497566ff634331bdaffdfe4ab10103", + "id": "pickuprate_15fc9bd9aee34bed9acb7776860853dd", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -293,8 +283,6 @@ interactions: - '1168' content-type: - application/json; charset=utf-8 - etag: - - W/"72dc5855b58f7c4061508070933d146a" expires: - '0' pragma: @@ -312,20 +300,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e7646400dce78961860045645d + - 6eaaf8ff67cb22d4e2aaba1c000ad6bd x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.736335' + - '0.888661' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -349,24 +337,24 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/pickups/pickup_c80e64ad84eb4691b32685a00cbe8329/cancel + uri: https://api.easypost.com/v2/pickups/pickup_7a497566ff634331bdaffdfe4ab10103/cancel response: body: - string: '{"id": "pickup_c80e64ad84eb4691b32685a00cbe8329", "object": "Pickup", - "created_at": "2023-05-16T22:16:59Z", "updated_at": "2023-05-16T22:17:03Z", - "mode": "test", "status": "canceled", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": "WTC62980280", "address": - {"id": "adr_6004d6a2f43711ed9c4bac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T22:16:58+00:00", "updated_at": "2023-05-16T22:16:58+00:00", "name": + string: '{"id": "pickup_7a497566ff634331bdaffdfe4ab10103", "object": "Pickup", + "created_at": "2025-03-07T16:46:12Z", "updated_at": "2025-03-07T16:46:14Z", + "mode": "test", "status": "canceled", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": "WTC65024918", "address": + {"id": "adr_ad70f202fb7311ef98d43cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:46:12+00:00", "updated_at": "2025-03-07T16:46:12+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-16T22:17:00Z", - "updated_at": "2023-05-16T22:17:00Z", "carrier": "USPS", "pickup_id": "pickup_c80e64ad84eb4691b32685a00cbe8329", - "id": "pickuprate_8946fd2a381842a0895d70a051de4256", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:12Z", + "updated_at": "2025-03-07T16:46:12Z", "carrier": "USPS", "pickup_id": "pickup_7a497566ff634331bdaffdfe4ab10103", + "id": "pickuprate_15fc9bd9aee34bed9acb7776860853dd", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -374,8 +362,6 @@ interactions: - '1167' content-type: - application/json; charset=utf-8 - etag: - - W/"6a002b345fca663d1634ff5f4773714a" expires: - '0' pragma: @@ -393,20 +379,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e7646400dee7896186004564e3 + - 6eaaf8ff67cb22d5e2aaba1c000ad7fc x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.957197' + - '0.804670' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_pickup_create.yaml b/tests/cassettes/test_pickup_create.yaml index 2f41d29f..347768cd 100644 --- a/tests/cassettes/test_pickup_create.yaml +++ b/tests/cassettes/test_pickup_create.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-15T21:49:51Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210070940", "updated_at": "2023-05-15T21:49:52Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_6b762f44f36a11ed8279ac1f6bc72124", "object": "Address", "created_at": - "2023-05-15T21:49:51+00:00", "updated_at": "2023-05-15T21:49:51+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_2f6e70599b424c10ba32dc2d05213870", - "object": "Parcel", "created_at": "2023-05-15T21:49:51Z", "updated_at": "2023-05-15T21:49:51Z", + string: '{"id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "created_at": "2025-03-07T16:45:59Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505602", "updated_at": + "2025-03-07T16:46:00Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_a6167a17fb7311ef94473cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:45:59+00:00", "updated_at": + "2025-03-07T16:45:59+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_c2911b5c7bda49a9803dfba239fad665", "object": + "Parcel", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_dffd4bead34c4eccbd3f8f8b63573957", - "created_at": "2023-05-15T21:49:52Z", "updated_at": "2023-05-15T21:49:52Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-15T21:49:52Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d08201d458744a4ebf36695bb79f7dee", + "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:00Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230515/ae55b2b2ffbf464dbfa3c9bf6ed99e86.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8d6cfe7a133ab49f19fdbb00699c16dd0.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_da446c8160994a159cd41e82dbce16bb", "object": - "Rate", "created_at": "2023-05-15T21:49:51Z", "updated_at": "2023-05-15T21:49:51Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_bd7a625f2f5e430f960e4b435b49052d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_71bd605e26684d569ce88ce56f284101", - "object": "Rate", "created_at": "2023-05-15T21:49:51Z", "updated_at": "2023-05-15T21:49:51Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_bd7a625f2f5e430f960e4b435b49052d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e733fbcd7f074bea8ffc16b6ae5c4759", - "object": "Rate", "created_at": "2023-05-15T21:49:51Z", "updated_at": "2023-05-15T21:49:51Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_bd7a625f2f5e430f960e4b435b49052d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a1a288eb38324043a41b94b271849355", - "object": "Rate", "created_at": "2023-05-15T21:49:51Z", "updated_at": "2023-05-15T21:49:51Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_bd7a625f2f5e430f960e4b435b49052d", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_a1a288eb38324043a41b94b271849355", - "object": "Rate", "created_at": "2023-05-15T21:49:52Z", "updated_at": "2023-05-15T21:49:52Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_bd7a625f2f5e430f960e4b435b49052d", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_1d6d74983da4469cb09a339b7245ec29", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210070940", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-15T21:49:52Z", "updated_at": - "2023-05-15T21:49:52Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_bd7a625f2f5e430f960e4b435b49052d", "carrier": "USPS", + null}, "rates": [{"id": "rate_e62e203a40874c9f9733fbd55e5fe9a8", "object": + "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_aee96176a0764400a3bc4a6a200b4d17", + "object": "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ac50b2827b524b9f9ab7a19507dfb541", + "object": "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_aee96176a0764400a3bc4a6a200b4d17", "object": + "Rate", "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_49bbcbf123ae4414984b6ee5182fc53b", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505602", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:00Z", + "updated_at": "2025-03-07T16:46:00Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzFkNmQ3NDk4M2RhNDQ2OWNiMDlhMzM5YjcyNDVlYzI5"}, - "to_address": {"id": "adr_6b6e1244f36a11ed8fc5ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-15T21:49:51+00:00", "updated_at": "2023-05-15T21:49:51+00:00", + "https://track.easypost.com/djE6dHJrXzQ5YmJjYmYxMjNhZTQ0MTQ5ODRiNmVlNTE4MmZjNTNi"}, + "to_address": {"id": "adr_a613c9f6fb7311ef9555ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:45:59+00:00", "updated_at": "2025-03-07T16:46:00+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_6b762f44f36a11ed8279ac1f6bc72124", - "object": "Address", "created_at": "2023-05-15T21:49:51+00:00", "updated_at": - "2023-05-15T21:49:51+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_a6167a17fb7311ef94473cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:45:59+00:00", "updated_at": + "2025-03-07T16:45:59+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_6b6e1244f36a11ed8fc5ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:51+00:00", "updated_at": "2023-05-15T21:49:51+00:00", "name": + "adr_a613c9f6fb7311ef9555ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:45:59+00:00", "updated_at": "2025-03-07T16:46:00+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_bd7a625f2f5e430f960e4b435b49052d", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"b7e585a06f3348555fa485bcfbe8b8a8" expires: - '0' location: - - /api/v2/shipments/shp_bd7a625f2f5e430f960e4b435b49052d + - /api/v2/shipments/shp_6b4d00550e884c07985eaeccfbdf4fc1 pragma: - no-cache referrer-policy: @@ -141,25 +133,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 3ecd17946462a8ffe2b98c340008917d + - 6eaaf8fa67cb22c7e2aaba00000ac624 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.545815' + - '0.818103' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -169,8 +163,8 @@ interactions: body: '{"pickup": {"address": {"name": "Jack Sparrow", "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "min_datetime": - "2023-05-17", "max_datetime": "2023-05-17", "instructions": "Pickup at front - door", "shipment": {"id": "shp_bd7a625f2f5e430f960e4b435b49052d"}}}' + "2025-03-08", "max_datetime": "2025-03-08", "instructions": "Pickup at front + door", "shipment": {"id": "shp_6b4d00550e884c07985eaeccfbdf4fc1"}}}' headers: Accept: - '*/*' @@ -190,21 +184,21 @@ interactions: uri: https://api.easypost.com/v2/pickups response: body: - string: '{"id": "pickup_0c2c33d249cc4982a1bc78c2c1a8d210", "object": "Pickup", - "created_at": "2023-05-15T21:49:53Z", "updated_at": "2023-05-15T21:49:53Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"id": "pickup_3cafbbc9dae14281a0c76848a9419cb1", "object": "Pickup", + "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6c6df1a4f36a11ed94ac3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T21:49:52+00:00", "updated_at": "2023-05-15T21:49:52+00:00", "name": + "adr_a6a0caccfb7311efb5feac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:00+00:00", "updated_at": "2025-03-07T16:46:00+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:54Z", - "updated_at": "2023-05-15T21:49:54Z", "carrier": "USPS", "pickup_id": "pickup_0c2c33d249cc4982a1bc78c2c1a8d210", - "id": "pickuprate_9cb256a78fbc459483c538f961df8ee1", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:02Z", + "updated_at": "2025-03-07T16:46:02Z", "carrier": "USPS", "pickup_id": "pickup_3cafbbc9dae14281a0c76848a9419cb1", + "id": "pickuprate_91820d140f3f4e9ebfa2e709688017c5", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -212,8 +206,6 @@ interactions: - '1157' content-type: - application/json; charset=utf-8 - etag: - - W/"f002ace5802a47aa70b31e84fc506349" expires: - '0' pragma: @@ -231,20 +223,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3ecd17946462a900e2b98c34000891d5 + - 6eaaf8fa67cb22c8e2aaba00000ac722 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.522076' + - '2.004399' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_pickup_get_next_page.yaml b/tests/cassettes/test_pickup_get_next_page.yaml index 332049db..7da00843 100644 --- a/tests/cassettes/test_pickup_get_next_page.yaml +++ b/tests/cassettes/test_pickup_get_next_page.yaml @@ -16,91 +16,73 @@ interactions: uri: https://api.easypost.com/v2/pickups?page_size=5 response: body: - string: '{"pickups": [{"id": "pickup_c7ab5738c30444868e61f0d3fef0ff95", "object": - "Pickup", "created_at": "2023-05-15T21:50:06Z", "updated_at": "2023-05-15T21:50:06Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"pickups": [{"id": "pickup_3cafbbc9dae14281a0c76848a9419cb1", "object": + "Pickup", "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_74406669f36a11edb3daac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T21:50:06+00:00", "updated_at": "2023-05-15T21:50:06+00:00", "name": + "adr_a6a0caccfb7311efb5feac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:00+00:00", "updated_at": "2025-03-07T16:46:00+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:50:06Z", - "updated_at": "2023-05-15T21:50:06Z", "carrier": "USPS", "pickup_id": "pickup_c7ab5738c30444868e61f0d3fef0ff95", - "id": "pickuprate_a1a991d35f9f4688a290e08548bb8755", "object": "PickupRate"}]}, - {"id": "pickup_dce2c5e15e9547f199c75e1b4a92725c", "object": "Pickup", "created_at": - "2023-05-15T21:50:01Z", "updated_at": "2023-05-15T21:50:04Z", "mode": "test", - "status": "canceled", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": "WTC62976246", "address": - {"id": "adr_71a8e849f36a11ed82c8ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-15T21:50:01+00:00", "updated_at": "2023-05-15T21:50:01+00:00", "name": + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:02Z", + "updated_at": "2025-03-07T16:46:02Z", "carrier": "USPS", "pickup_id": "pickup_3cafbbc9dae14281a0c76848a9419cb1", + "id": "pickuprate_91820d140f3f4e9ebfa2e709688017c5", "object": "PickupRate"}]}, + {"id": "pickup_62ca1c7c91b843888ff982502c8018b7", "object": "Pickup", "created_at": + "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", "mode": "test", + "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": + "adr_ffc9a077fac311efb6293cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:38+00:00", "updated_at": "2025-03-06T19:48:38+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:50:02Z", - "updated_at": "2023-05-15T21:50:02Z", "carrier": "USPS", "pickup_id": "pickup_dce2c5e15e9547f199c75e1b4a92725c", - "id": "pickuprate_8888d57350794b868dde14933836cf2b", "object": "PickupRate"}]}, - {"id": "pickup_5460a38ba2cd4d889d2e01958584a74e", "object": "Pickup", "created_at": - "2023-05-15T21:49:58Z", "updated_at": "2023-05-15T21:50:00Z", "mode": "test", - "status": "scheduled", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": "WTC62976244", "address": - {"id": "adr_6f9e2bd2f36a11eda045ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:58+00:00", "updated_at": "2023-05-15T21:49:58+00:00", "name": + {}}, "carrier_accounts": [], "pickup_rates": []}, {"id": "pickup_e1cf0a09b64a4160853f4121d6713747", + "object": "Pickup", "created_at": "2025-03-06T19:48:37Z", "updated_at": "2025-03-06T19:48:37Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": + "adr_fefb306bfac311ef9a28ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:37+00:00", "updated_at": "2025-03-06T19:48:37+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:59Z", - "updated_at": "2023-05-15T21:49:59Z", "carrier": "USPS", "pickup_id": "pickup_5460a38ba2cd4d889d2e01958584a74e", - "id": "pickuprate_b884f42434724eabb45d9c70f311e4bf", "object": "PickupRate"}]}, - {"id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", "object": "Pickup", "created_at": - "2023-05-15T21:49:55Z", "updated_at": "2023-05-15T21:49:55Z", "mode": "test", - "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + {}}, "carrier_accounts": [], "pickup_rates": []}, {"id": "pickup_49b84091f140493e8df6d44ec9de856a", + "object": "Pickup", "created_at": "2025-03-06T19:48:36Z", "updated_at": "2025-03-06T19:48:36Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6dfcf608f36a11ed99deac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:55+00:00", "updated_at": "2023-05-15T21:49:55+00:00", "name": + "adr_fe10e26efac311efb51c3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:35+00:00", "updated_at": "2025-03-06T19:48:35+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:56Z", - "updated_at": "2023-05-15T21:49:56Z", "carrier": "USPS", "pickup_id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", - "id": "pickuprate_152867bbc5014534b67be86918ad8b10", "object": "PickupRate"}]}, - {"id": "pickup_0c2c33d249cc4982a1bc78c2c1a8d210", "object": "Pickup", "created_at": - "2023-05-15T21:49:53Z", "updated_at": "2023-05-15T21:49:53Z", "mode": "test", - "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + {}}, "carrier_accounts": [], "pickup_rates": []}, {"id": "pickup_f4b950fb123b412282de960603a832c4", + "object": "Pickup", "created_at": "2025-03-06T19:48:34Z", "updated_at": "2025-03-06T19:48:34Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6c6df1a4f36a11ed94ac3cecef1b359e", "object": "Address", "created_at": - "2023-05-15T21:49:52+00:00", "updated_at": "2023-05-15T21:49:52+00:00", "name": + "adr_fd324b43fac311ef93cdac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:34+00:00", "updated_at": "2025-03-06T19:48:34+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:54Z", - "updated_at": "2023-05-15T21:49:54Z", "carrier": "USPS", "pickup_id": "pickup_0c2c33d249cc4982a1bc78c2c1a8d210", - "id": "pickuprate_9cb256a78fbc459483c538f961df8ee1", "object": "PickupRate"}]}], - "has_more": true}' + {}}, "carrier_accounts": [], "pickup_rates": []}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '5840' + - '4691' content-type: - application/json; charset=utf-8 - etag: - - W/"ec77104841c0adabf3a2344f12760f72" expires: - '0' pragma: @@ -118,20 +100,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3ecd17926462a949e2b98c5b0008a490 + - 9087f27267cb22cbe2aaba02004422d1 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb2nuq 99aac35317 x-runtime: - - '0.086538' + - '0.068212' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -151,94 +133,88 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/pickups?before_id=pickup_0c2c33d249cc4982a1bc78c2c1a8d210&page_size=5 + uri: https://api.easypost.com/v2/pickups?before_id=pickup_f4b950fb123b412282de960603a832c4&page_size=5 response: body: - string: '{"pickups": [{"id": "pickup_6feb7eb816d74b9ea251ad274942c3cd", "object": - "Pickup", "created_at": "2022-09-29T15:50:22Z", "updated_at": "2022-09-29T15:50:24Z", - "mode": "test", "status": "scheduled", "reference": null, "min_datetime": - "2022-09-30T00:00:00Z", "max_datetime": "2022-09-30T00:00:00Z", "is_account_address": - false, "instructions": "Pickup at front door", "messages": [], "confirmation": - "WTC62243946", "address": {"id": "adr_6d421e5d400e11edb3fdac1f6b0a0d1e", "object": - "Address", "created_at": "2022-09-29T15:50:22+00:00", "updated_at": "2022-09-29T15:50:22+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"pickups": [{"id": "pickup_bebf144939d244daafdb929b99a2ef73", "object": + "Pickup", "created_at": "2025-03-06T19:48:32Z", "updated_at": "2025-03-06T19:48:32Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": + "adr_fbce76b7fac311efb40f3cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:32+00:00", "updated_at": "2025-03-06T19:48:32+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2022-09-29T15:50:23Z", - "updated_at": "2022-09-29T15:50:23Z", "carrier": "USPS", "pickup_id": "pickup_6feb7eb816d74b9ea251ad274942c3cd", - "id": "pickuprate_49850f8695684c92a6ea34b4870110d3", "object": "PickupRate"}]}, - {"id": "pickup_5f422c9099b344dcbf88e0a348c612c3", "object": "Pickup", "created_at": - "2022-09-29T15:47:48Z", "updated_at": "2022-09-29T15:47:51Z", "mode": "test", - "status": "scheduled", "reference": null, "min_datetime": "2022-09-30T00:00:00Z", - "max_datetime": "2022-09-30T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": "WTC62243938", "address": - {"id": "adr_1187308d400e11edb6b7ac1f6bc7b362", "object": "Address", "created_at": - "2022-09-29T15:47:48+00:00", "updated_at": "2022-09-29T15:47:48+00:00", "name": + {}}, "carrier_accounts": [], "pickup_rates": []}, {"id": "pickup_01e005e4f2d04632b21b79cc76bc605c", + "object": "Pickup", "created_at": "2024-08-16T15:47:02Z", "updated_at": "2024-08-16T15:47:02Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": + "adr_c7d41c565be611ef8e34ac1f6bc53342", "object": "Address", "created_at": + "2024-08-16T15:47:02+00:00", "updated_at": "2024-08-16T15:47:02+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2022-09-29T15:47:50Z", - "updated_at": "2022-09-29T15:47:50Z", "carrier": "USPS", "pickup_id": "pickup_5f422c9099b344dcbf88e0a348c612c3", - "id": "pickuprate_588895ee61ba4c99b889f9bb631911a7", "object": "PickupRate"}]}, - {"id": "pickup_0dd9c976197b4cc18c9a017a64e6946c", "object": "Pickup", "created_at": - "2022-09-09T17:18:08Z", "updated_at": "2022-09-09T17:18:09Z", "mode": "test", - "status": "unknown", "reference": null, "min_datetime": "2022-10-17T00:00:00Z", - "max_datetime": "2022-10-17T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_5fc75633306311edb805ac1f6bc7b362", "object": "Address", "created_at": - "2022-09-09T17:18:08+00:00", "updated_at": "2022-09-09T17:18:08+00:00", "name": + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2024-08-16T15:47:03Z", + "updated_at": "2024-08-16T15:47:03Z", "carrier": "USPS", "pickup_id": "pickup_01e005e4f2d04632b21b79cc76bc605c", + "id": "pickuprate_fcb3197bea914ee29e3d6a2ae7909b9b", "object": "PickupRate"}]}, + {"id": "pickup_b2949eb61e0b4328a57b6cd946dcd7e4", "object": "Pickup", "created_at": + "2024-08-16T15:46:57Z", "updated_at": "2024-08-16T15:47:01Z", "mode": "test", + "status": "canceled", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": "WTC64761770", "address": + {"id": "adr_c5062b085be611ef904eac1f6bc539ae", "object": "Address", "created_at": + "2024-08-16T15:46:57+00:00", "updated_at": "2024-08-16T15:46:57+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2022-09-09T17:18:09Z", - "updated_at": "2022-09-09T17:18:09Z", "carrier": "USPS", "pickup_id": "pickup_0dd9c976197b4cc18c9a017a64e6946c", - "id": "pickuprate_ea8c36e082754264845c0e0f34dcc571", "object": "PickupRate"}]}, - {"id": "pickup_cfc0ccd3f0f94c17898e2363b95e026a", "object": "Pickup", "created_at": - "2022-09-08T21:10:04Z", "updated_at": "2022-09-08T21:10:05Z", "mode": "test", - "status": "unknown", "reference": null, "min_datetime": "2022-10-17T00:00:00Z", - "max_datetime": "2022-10-17T00:00:00Z", "is_account_address": false, "instructions": - "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_9c08382c2fba11edb56fac1f6bc72124", "object": "Address", "created_at": - "2022-09-08T21:10:04+00:00", "updated_at": "2022-09-08T21:10:04+00:00", "name": + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2024-08-16T15:46:58Z", + "updated_at": "2024-08-16T15:46:58Z", "carrier": "USPS", "pickup_id": "pickup_b2949eb61e0b4328a57b6cd946dcd7e4", + "id": "pickuprate_61c282cd40b9467ba8a089c7c7d6e99c", "object": "PickupRate"}]}, + {"id": "pickup_494caf8885524ab9af07a4689e4b4e47", "object": "Pickup", "created_at": + "2024-08-16T15:46:53Z", "updated_at": "2024-08-16T15:46:56Z", "mode": "test", + "status": "scheduled", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": + "Pickup at front door", "messages": [], "confirmation": "WTC64761768", "address": + {"id": "adr_c295906f5be611ef8f45ac1f6bc539ae", "object": "Address", "created_at": + "2024-08-16T15:46:53+00:00", "updated_at": "2024-08-16T15:46:53+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2022-09-08T21:10:05Z", - "updated_at": "2022-09-08T21:10:05Z", "carrier": "USPS", "pickup_id": "pickup_cfc0ccd3f0f94c17898e2363b95e026a", - "id": "pickuprate_95a127b2e60e4148ab1e40a677b6bce7", "object": "PickupRate"}]}, - {"id": "pickup_9118820e33eb4f2bbc27212e1c28716c", "object": "Pickup", "created_at": - "2022-09-08T21:09:27Z", "updated_at": "2022-09-08T21:09:29Z", "mode": "test", - "status": "unknown", "reference": null, "min_datetime": "2022-10-17T00:00:00Z", - "max_datetime": "2022-10-17T00:00:00Z", "is_account_address": false, "instructions": + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2024-08-16T15:46:54Z", + "updated_at": "2024-08-16T15:46:54Z", "carrier": "USPS", "pickup_id": "pickup_494caf8885524ab9af07a4689e4b4e47", + "id": "pickuprate_a772332c1f47418ca25986f7a7f0e7dc", "object": "PickupRate"}]}, + {"id": "pickup_75767b64ada14629a24d42254656a137", "object": "Pickup", "created_at": + "2024-08-16T15:46:50Z", "updated_at": "2024-08-16T15:46:50Z", "mode": "test", + "status": "unknown", "reference": null, "min_datetime": "2024-08-17T00:00:00Z", + "max_datetime": "2024-08-17T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_8600c2042fba11eda531ac1f6b0a0d1e", "object": "Address", "created_at": - "2022-09-08T21:09:27+00:00", "updated_at": "2022-09-08T21:09:27+00:00", "name": + "adr_c0b434505be611ef8aa3ac1f6bc539aa", "object": "Address", "created_at": + "2024-08-16T15:46:50+00:00", "updated_at": "2024-08-16T15:46:50+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2022-09-08T21:09:29Z", - "updated_at": "2022-09-08T21:09:29Z", "carrier": "USPS", "pickup_id": "pickup_9118820e33eb4f2bbc27212e1c28716c", - "id": "pickuprate_5ecc7ea8475d4134b9fd6a6d15b122f1", "object": "PickupRate"}]}], + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2024-08-16T15:46:52Z", + "updated_at": "2024-08-16T15:46:52Z", "carrier": "USPS", "pickup_id": "pickup_75767b64ada14629a24d42254656a137", + "id": "pickuprate_01651b090221426992b6130c20f56500", "object": "PickupRate"}]}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '5841' + - '5558' content-type: - application/json; charset=utf-8 - etag: - - W/"13484b6456056f4979a7b7df603c3505" expires: - '0' pragma: @@ -256,20 +232,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 3ecd17926462a949e2b98c5b0008a49a + - 9087f27267cb22cbe2aaba02004422eb x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb2nuq 99aac35317 x-runtime: - - '0.102829' + - '0.136606' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_pickup_lowest_rate.yaml b/tests/cassettes/test_pickup_lowest_rate.yaml index 79f087b4..6d0ee097 100644 --- a/tests/cassettes/test_pickup_lowest_rate.yaml +++ b/tests/cassettes/test_pickup_lowest_rate.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T22:21:05Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210420523", "updated_at": "2023-05-16T22:21:06Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_f32f699af43711ed9d30ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T22:21:05+00:00", "updated_at": "2023-05-16T22:21:05+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_1c0f1bc7f8704282bf473e5ee6866a05", - "object": "Parcel", "created_at": "2023-05-16T22:21:05Z", "updated_at": "2023-05-16T22:21:05Z", + string: '{"id": "shp_6348a453cbd04b4189dc85524719e6b2", "created_at": "2025-03-07T16:46:14Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505640", "updated_at": + "2025-03-07T16:46:15Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_af10e4b4fb7311ef9acaac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:14+00:00", "updated_at": + "2025-03-07T16:46:14+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_a9373fdd04bd4d83874c7e397ecddcb6", "object": + "Parcel", "created_at": "2025-03-07T16:46:14Z", "updated_at": "2025-03-07T16:46:14Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_9fb46ba11eba4326b270b943762bea56", - "created_at": "2023-05-16T22:21:06Z", "updated_at": "2023-05-16T22:21:06Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T22:21:06Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f54afe8913fb4046b55523838df4f97b", + "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:15Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/c0f7ec48c6d84e6ebcd667f2014584a3.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8b170594430f64d768ceb157887c5c28e.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_30105ff3ff5c4168839245d483a56d74", "object": - "Rate", "created_at": "2023-05-16T22:21:06Z", "updated_at": "2023-05-16T22:21:06Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_f5055ec96bc44acea01aa6cfe8b1c27b", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_159b0659d04c496ab3d9e40033f9315d", - "object": "Rate", "created_at": "2023-05-16T22:21:06Z", "updated_at": "2023-05-16T22:21:06Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_f5055ec96bc44acea01aa6cfe8b1c27b", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_7510862d474f48f88bcebdb0500c9617", - "object": "Rate", "created_at": "2023-05-16T22:21:06Z", "updated_at": "2023-05-16T22:21:06Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_f5055ec96bc44acea01aa6cfe8b1c27b", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_d63c1bd8c4da4504ab9b8ad53c3c61e7", "object": "Rate", "created_at": - "2023-05-16T22:21:06Z", "updated_at": "2023-05-16T22:21:06Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_f5055ec96bc44acea01aa6cfe8b1c27b", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_7510862d474f48f88bcebdb0500c9617", - "object": "Rate", "created_at": "2023-05-16T22:21:06Z", "updated_at": "2023-05-16T22:21:06Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_f5055ec96bc44acea01aa6cfe8b1c27b", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_779bb9eeb4bd46d4b778b6da328161b9", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210420523", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T22:21:06Z", "updated_at": - "2023-05-16T22:21:06Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_f5055ec96bc44acea01aa6cfe8b1c27b", "carrier": "USPS", + null}, "rates": [{"id": "rate_f9da1c97861743bba5eaf3db89b10898", "object": + "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f320606ea0bd45ef92a34f109234fc44", + "object": "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b501d85dcc0743fdb0d8ab673107bf5d", + "object": "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_b501d85dcc0743fdb0d8ab673107bf5d", "object": + "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_4c1b66c0dad34060a7b4704100bdd88e", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505640", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:15Z", + "updated_at": "2025-03-07T16:46:15Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzc3OWJiOWVlYjRiZDQ2ZDRiNzc4YjZkYTMyODE2MWI5"}, - "to_address": {"id": "adr_f32c8e16f43711ed9d2fac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T22:21:05+00:00", "updated_at": "2023-05-16T22:21:06+00:00", + "https://track.easypost.com/djE6dHJrXzRjMWI2NmMwZGFkMzQwNjBhN2I0NzA0MTAwYmRkODhl"}, + "to_address": {"id": "adr_af0b9199fb7311ef9ac8ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:15+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_f32f699af43711ed9d30ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T22:21:05+00:00", "updated_at": - "2023-05-16T22:21:05+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_af10e4b4fb7311ef9acaac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:14+00:00", "updated_at": + "2025-03-07T16:46:14+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_f32c8e16f43711ed9d2fac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T22:21:05+00:00", "updated_at": "2023-05-16T22:21:06+00:00", "name": + "adr_af0b9199fb7311ef9ac8ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:15+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_f5055ec96bc44acea01aa6cfe8b1c27b", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"93c8f1ed5af1c9b38f109f144b733991" expires: - '0' location: - - /api/v2/shipments/shp_f5055ec96bc44acea01aa6cfe8b1c27b + - /api/v2/shipments/shp_6348a453cbd04b4189dc85524719e6b2 pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e06646401d1e789651c0049adbe + - 6eaaf8fb67cb22d6e2aaba1d000ad900 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.946503' + - '0.866595' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -169,8 +161,8 @@ interactions: body: '{"pickup": {"address": {"name": "Jack Sparrow", "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "min_datetime": - "2023-05-17", "max_datetime": "2023-05-17", "instructions": "Pickup at front - door", "shipment": {"id": "shp_f5055ec96bc44acea01aa6cfe8b1c27b"}}}' + "2025-03-08", "max_datetime": "2025-03-08", "instructions": "Pickup at front + door", "shipment": {"id": "shp_6348a453cbd04b4189dc85524719e6b2"}}}' headers: Accept: - '*/*' @@ -190,21 +182,21 @@ interactions: uri: https://api.easypost.com/v2/pickups response: body: - string: '{"id": "pickup_53c300439dd54b05b9686bb944c16f61", "object": "Pickup", - "created_at": "2023-05-16T22:21:06Z", "updated_at": "2023-05-16T22:21:06Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"id": "pickup_9fec2553c91849b18dd35a155e46261a", "object": "Pickup", + "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_f3cccb21f43711edbbc4ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T22:21:06+00:00", "updated_at": "2023-05-16T22:21:06+00:00", "name": + "adr_afabb759fb7311ef9b2cac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:15+00:00", "updated_at": "2025-03-07T16:46:15+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-16T22:21:07Z", - "updated_at": "2023-05-16T22:21:07Z", "carrier": "USPS", "pickup_id": "pickup_53c300439dd54b05b9686bb944c16f61", - "id": "pickuprate_1f178014abab481eb444b4fb67b78cfd", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:16Z", + "updated_at": "2025-03-07T16:46:16Z", "carrier": "USPS", "pickup_id": "pickup_9fec2553c91849b18dd35a155e46261a", + "id": "pickuprate_539f07c1ef384c359a386a44c0b5514e", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -212,8 +204,6 @@ interactions: - '1157' content-type: - application/json; charset=utf-8 - etag: - - W/"c59b26599f8a56a2df366d7b37d967a8" expires: - '0' pragma: @@ -231,20 +221,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e06646401d2e789651c0049ae14 + - 6eaaf8fb67cb22d7e2aaba1d000ada30 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.181698' + - '1.254309' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_pickup_retrieve.yaml b/tests/cassettes/test_pickup_retrieve.yaml index 2e7a16a4..0cb39939 100644 --- a/tests/cassettes/test_pickup_retrieve.yaml +++ b/tests/cassettes/test_pickup_retrieve.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-15T21:49:54Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210070971", "updated_at": "2023-05-15T21:49:55Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_6d71d260f36a11edb801ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-15T21:49:54+00:00", "updated_at": "2023-05-15T21:49:54+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_2d06640b6b6248009451d5649fb2495e", - "object": "Parcel", "created_at": "2023-05-15T21:49:54Z", "updated_at": "2023-05-15T21:49:54Z", + string: '{"id": "shp_622803c6479446e895b6ec9ffc580f58", "created_at": "2025-03-07T16:46:03Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505619", "updated_at": + "2025-03-07T16:46:04Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_a84fa087fb7311ef9cb3ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:03+00:00", "updated_at": + "2025-03-07T16:46:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_5c264ed4432848aaad2545e0dfb8eeb4", "object": + "Parcel", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_cadcb6bd5a814c3aad39d0dfc7525906", - "created_at": "2023-05-15T21:49:55Z", "updated_at": "2023-05-15T21:49:55Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-15T21:49:55Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_2dd5e193a0874563acda1913359fbef3", + "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:04Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230515/cc3a20d052114a76aa1c3cf478ffe1b4.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e82ca3296f28234c8c963d9042eefecad2.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_64dd45a3f36f437291400ccbcb2e5975", "object": - "Rate", "created_at": "2023-05-15T21:49:54Z", "updated_at": "2023-05-15T21:49:54Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_a21f7364ac0444fe94a5d6f39f77183e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_524f05a09ee94b42b372656e0fd5cf4a", "object": "Rate", "created_at": - "2023-05-15T21:49:54Z", "updated_at": "2023-05-15T21:49:54Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_a21f7364ac0444fe94a5d6f39f77183e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_c31d2f723e824d2ca74a784730d8866c", "object": "Rate", "created_at": - "2023-05-15T21:49:54Z", "updated_at": "2023-05-15T21:49:54Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_a21f7364ac0444fe94a5d6f39f77183e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_b7159ceb1c184f72875ab3d6a6ee9dae", "object": "Rate", "created_at": - "2023-05-15T21:49:54Z", "updated_at": "2023-05-15T21:49:54Z", "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_a21f7364ac0444fe94a5d6f39f77183e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_64dd45a3f36f437291400ccbcb2e5975", - "object": "Rate", "created_at": "2023-05-15T21:49:55Z", "updated_at": "2023-05-15T21:49:55Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_a21f7364ac0444fe94a5d6f39f77183e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_8eebb304a36147e19650f7f81ccfaca9", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210070971", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-15T21:49:55Z", "updated_at": - "2023-05-15T21:49:55Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_a21f7364ac0444fe94a5d6f39f77183e", "carrier": "USPS", + null}, "rates": [{"id": "rate_5ad2d3f3665b4343b75e85a5a0fe02de", "object": + "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_646a6333c5af49168d64b3df5382e557", + "object": "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5179687711ef43e2a5188ee7aa89da97", + "object": "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_646a6333c5af49168d64b3df5382e557", "object": + "Rate", "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_11c660ecffdf4b938a1212ec4709662c", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505619", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:04Z", + "updated_at": "2025-03-07T16:46:04Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzhlZWJiMzA0YTM2MTQ3ZTE5NjUwZjdmODFjY2ZhY2E5"}, - "to_address": {"id": "adr_6d6f1356f36a11ed98583cecef1b359e", "object": "Address", - "created_at": "2023-05-15T21:49:54+00:00", "updated_at": "2023-05-15T21:49:54+00:00", + "https://track.easypost.com/djE6dHJrXzExYzY2MGVjZmZkZjRiOTM4YTEyMTJlYzQ3MDk2NjJj"}, + "to_address": {"id": "adr_a84d64eafb7311ef95cf3cecef1b359e", "object": "Address", + "created_at": "2025-03-07T16:46:03+00:00", "updated_at": "2025-03-07T16:46:03+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_6d71d260f36a11edb801ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-15T21:49:54+00:00", "updated_at": - "2023-05-15T21:49:54+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_a84fa087fb7311ef9cb3ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:03+00:00", "updated_at": + "2025-03-07T16:46:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_6d6f1356f36a11ed98583cecef1b359e", "object": "Address", "created_at": - "2023-05-15T21:49:54+00:00", "updated_at": "2023-05-15T21:49:54+00:00", "name": + "adr_a84d64eafb7311ef95cf3cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:46:03+00:00", "updated_at": "2025-03-07T16:46:03+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_a21f7364ac0444fe94a5d6f39f77183e", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"970ec211963e5315f7a0de3e6f5cac6f" expires: - '0' location: - - /api/v2/shipments/shp_a21f7364ac0444fe94a5d6f39f77183e + - /api/v2/shipments/shp_622803c6479446e895b6ec9ffc580f58 pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495ae6462a902e2b98c350039c87f + - 9087f27267cb22cbe2aaba0300442334 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb2nuq 99aac35317 x-runtime: - - '0.878786' + - '0.808994' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -169,8 +161,8 @@ interactions: body: '{"pickup": {"address": {"name": "Jack Sparrow", "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "min_datetime": - "2023-05-17", "max_datetime": "2023-05-17", "instructions": "Pickup at front - door", "shipment": {"id": "shp_a21f7364ac0444fe94a5d6f39f77183e"}}}' + "2025-03-08", "max_datetime": "2025-03-08", "instructions": "Pickup at front + door", "shipment": {"id": "shp_622803c6479446e895b6ec9ffc580f58"}}}' headers: Accept: - '*/*' @@ -190,21 +182,21 @@ interactions: uri: https://api.easypost.com/v2/pickups response: body: - string: '{"id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", "object": "Pickup", - "created_at": "2023-05-15T21:49:55Z", "updated_at": "2023-05-15T21:49:55Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"id": "pickup_424882d020b04a09a33613f9bdfdc689", "object": "Pickup", + "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6dfcf608f36a11ed99deac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:55+00:00", "updated_at": "2023-05-15T21:49:55+00:00", "name": + "adr_a8cfa0bcfb7311ef9738ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:04+00:00", "updated_at": "2025-03-07T16:46:04+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:56Z", - "updated_at": "2023-05-15T21:49:56Z", "carrier": "USPS", "pickup_id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", - "id": "pickuprate_152867bbc5014534b67be86918ad8b10", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:06Z", + "updated_at": "2025-03-07T16:46:06Z", "carrier": "USPS", "pickup_id": "pickup_424882d020b04a09a33613f9bdfdc689", + "id": "pickuprate_1acf4be9344b46a09cbea963dfdc2d6a", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -212,8 +204,6 @@ interactions: - '1157' content-type: - application/json; charset=utf-8 - etag: - - W/"67da1cfbc8a0b52d64a396bf7e4ce3e5" expires: - '0' pragma: @@ -231,20 +221,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495ae6462a903e2b98c350039c8cd + - 9087f27267cb22cce2aaba030044240e x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb2nuq 99aac35317 x-runtime: - - '1.097157' + - '2.282689' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -264,24 +254,24 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/pickups/pickup_f7bf2fbb95c54d979eba5344be21d46e + uri: https://api.easypost.com/v2/pickups/pickup_424882d020b04a09a33613f9bdfdc689 response: body: - string: '{"id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", "object": "Pickup", - "created_at": "2023-05-15T21:49:55Z", "updated_at": "2023-05-15T21:49:55Z", - "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2023-05-17T00:00:00Z", - "max_datetime": "2023-05-17T00:00:00Z", "is_account_address": false, "instructions": + string: '{"id": "pickup_424882d020b04a09a33613f9bdfdc689", "object": "Pickup", + "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "mode": "test", "status": "unknown", "reference": null, "min_datetime": "2025-03-08T00:00:00Z", + "max_datetime": "2025-03-08T00:00:00Z", "is_account_address": false, "instructions": "Pickup at front door", "messages": [], "confirmation": null, "address": {"id": - "adr_6dfcf608f36a11ed99deac1f6bc7b362", "object": "Address", "created_at": - "2023-05-15T21:49:55+00:00", "updated_at": "2023-05-15T21:49:55+00:00", "name": + "adr_a8cfa0bcfb7311ef9738ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:04+00:00", "updated_at": "2025-03-07T16:46:04+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "carrier_accounts": [], "pickup_rates": [{"mode": "test", "service": - "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2023-05-15T21:49:56Z", - "updated_at": "2023-05-15T21:49:56Z", "carrier": "USPS", "pickup_id": "pickup_f7bf2fbb95c54d979eba5344be21d46e", - "id": "pickuprate_152867bbc5014534b67be86918ad8b10", "object": "PickupRate"}]}' + "NextDay", "rate": "0.00", "currency": "USD", "created_at": "2025-03-07T16:46:06Z", + "updated_at": "2025-03-07T16:46:06Z", "carrier": "USPS", "pickup_id": "pickup_424882d020b04a09a33613f9bdfdc689", + "id": "pickuprate_1acf4be9344b46a09cbea963dfdc2d6a", "object": "PickupRate"}]}' headers: cache-control: - private, no-cache, no-store @@ -289,8 +279,6 @@ interactions: - '1157' content-type: - application/json; charset=utf-8 - etag: - - W/"67da1cfbc8a0b52d64a396bf7e4ce3e5" expires: - '0' pragma: @@ -303,27 +291,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 44e495ae6462a904e2b98c350039c91e + - 9087f27267cb22cee2aaba03004426a5 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb2nuq 99aac35317 x-runtime: - - '0.124861' + - '0.054890' x-version-label: - - easypost-202305152107-770224374c-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_rate_retrieve.yaml b/tests/cassettes/test_rate_retrieve.yaml index b73a7007..29ad6fee 100644 --- a/tests/cassettes/test_rate_retrieve.yaml +++ b/tests/cassettes/test_rate_retrieve.yaml @@ -6,7 +6,7 @@ interactions: "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": false}' + 15.4}}}' headers: Accept: - '*/*' @@ -15,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '520' + - '496' Content-Type: - application/json authorization: @@ -26,95 +26,73 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-15T18:11:04Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-15T18:11:05Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_db21d518f34b11ed8e63ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-15T18:11:04+00:00", "updated_at": "2023-05-15T18:11:04+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_fa3ecb526d1d4069b69e9ab69fbb183c", "created_at": "2025-03-06T19:48:39Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-06T19:48:39Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_0005dcd7fac411ef9541ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:39+00:00", "updated_at": "2025-03-06T19:48:39+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_f5a7d63d9d064e7ea095cac03d658c90", - "object": "Parcel", "created_at": "2023-05-15T18:11:04Z", "updated_at": "2023-05-15T18:11:04Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_15a63f6904274e3bb04ecf05860f0b81", + "object": "Parcel", "created_at": "2025-03-06T19:48:39Z", "updated_at": "2025-03-06T19:48:39Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_7a4ca00785d84f26adeffde144851009", - "object": "Rate", "created_at": "2023-05-15T18:11:05Z", "updated_at": "2023-05-15T18:11:05Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_c8d674f4c09146dfa38ce27c9407c866", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c83acc4163b546e78216f0ed2ced2b15", - "object": "Rate", "created_at": "2023-05-15T18:11:05Z", "updated_at": "2023-05-15T18:11:05Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_bfc18c450b1145358f8ba52241cc134e", + "object": "Rate", "created_at": "2025-03-06T19:48:39Z", "updated_at": "2025-03-06T19:48:39Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_c8d674f4c09146dfa38ce27c9407c866", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d69fdc7be5624ef888f980a06d5f9bd2", - "object": "Rate", "created_at": "2023-05-15T18:11:05Z", "updated_at": "2023-05-15T18:11:05Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_c8d674f4c09146dfa38ce27c9407c866", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_1dd6bae25d9744d1908d3aee7de10bd3", "object": "Rate", "created_at": - "2023-05-15T18:11:05Z", "updated_at": "2023-05-15T18:11:05Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_c8d674f4c09146dfa38ce27c9407c866", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_db1f9331f34b11ed866dac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-15T18:11:04+00:00", "updated_at": "2023-05-15T18:11:04+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_db21d518f34b11ed8e63ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-15T18:11:04+00:00", "updated_at": - "2023-05-15T18:11:04+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_fa3ecb526d1d4069b69e9ab69fbb183c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9d62cddf616b418c8dbba7bfbe678c0c", + "object": "Rate", "created_at": "2025-03-06T19:48:39Z", "updated_at": "2025-03-06T19:48:39Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_fa3ecb526d1d4069b69e9ab69fbb183c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_0d48f1bd493b4091a41ff71b359b9a01", + "object": "Rate", "created_at": "2025-03-06T19:48:39Z", "updated_at": "2025-03-06T19:48:39Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_fa3ecb526d1d4069b69e9ab69fbb183c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_00041b60fac411ef9540ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-06T19:48:39+00:00", "updated_at": + "2025-03-06T19:48:39+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_db1f9331f34b11ed866dac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-15T18:11:04+00:00", "updated_at": "2023-05-15T18:11:04+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_0005dcd7fac411ef9541ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:39+00:00", "updated_at": "2025-03-06T19:48:39+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_00041b60fac411ef9540ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-06T19:48:39+00:00", "updated_at": "2025-03-06T19:48:39+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_c8d674f4c09146dfa38ce27c9407c866", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '5851' + - '4325' content-type: - application/json; charset=utf-8 - etag: - - W/"771d160f7d8c6f346fd3a8f6e166db96" expires: - '0' location: - - /api/v2/shipments/shp_c8d674f4c09146dfa38ce27c9407c866 + - /api/v2/shipments/shp_fa3ecb526d1d4069b69e9ab69fbb183c pragma: - no-cache referrer-policy: @@ -130,20 +108,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495af646275b8e78751e90023fc43 + - 8e8eb62967c9fc17e2b97b5a0018a4ec x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.926748' + - '0.201098' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -163,25 +141,23 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/rates/rate_7a4ca00785d84f26adeffde144851009 + uri: https://api.easypost.com/v2/rates/rate_bfc18c450b1145358f8ba52241cc134e response: body: - string: '{"id": "rate_7a4ca00785d84f26adeffde144851009", "object": "Rate", "created_at": - "2023-05-15T18:11:05Z", "updated_at": "2023-05-15T18:11:05Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_c8d674f4c09146dfa38ce27c9407c866", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}' + string: '{"id": "rate_bfc18c450b1145358f8ba52241cc134e", "object": "Rate", "created_at": + "2025-03-06T19:48:39Z", "updated_at": "2025-03-06T19:48:39Z", "mode": "test", + "service": "Priority", "carrier": "USPS", "rate": "7.42", "currency": "USD", + "retail_rate": "9.90", "retail_currency": "USD", "list_rate": "8.34", "list_currency": + "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, + "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": + "shp_fa3ecb526d1d4069b69e9ab69fbb183c", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}' headers: cache-control: - private, no-cache, no-store content-length: - - '539' + - '535' content-type: - application/json; charset=utf-8 - etag: - - W/"5be323f32739ace01ee4d9280fe22914" expires: - '0' pragma: @@ -199,20 +175,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 44e495af646275b9e78751e90023fca2 + - 8e8eb62967c9fc17e2b97b5a0018a540 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.186967' + - '0.294512' x-version-label: - - easypost-202305151637-e5ce91ee24-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_referral_customer_add_bank_account_from_stripe.yaml b/tests/cassettes/test_referral_customer_add_bank_account_from_stripe.yaml new file mode 100644 index 00000000..bae7f247 --- /dev/null +++ b/tests/cassettes/test_referral_customer_add_bank_account_from_stripe.yaml @@ -0,0 +1,71 @@ +interactions: +- request: + body: '{"financial_connections_id": "fca_0QAc7sDqT4huGUvdf6BahYa9", "mandate_data": + {"ip_address": "127.0.0.1", "user_agent": "Mozilla/5.0", "accepted_at": 1722510730}, + "priority": "primary"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '184' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/bank_accounts + response: + body: + string: '{"error": {"code": "BANK_ACCOUNT.INVALID_PARAMS", "message": "account_holder_name + must be present when creating a Financial Connections payment method", "errors": + []}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '161' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 595be10f677d770ce2b7da9900093399 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb38nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.032022' + x-version-label: + - easypost-202501062233-3c9302ef23-master + x-xss-protection: + - 1; mode=block + status: + code: 422 + message: Unprocessable Entity +version: 1 diff --git a/tests/cassettes/test_referral_customer_add_credit_card.yaml b/tests/cassettes/test_referral_customer_add_credit_card.yaml deleted file mode 100644 index 141696d1..00000000 --- a/tests/cassettes/test_referral_customer_add_credit_card.yaml +++ /dev/null @@ -1,202 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - authorization: - - - user-agent: - - - method: GET - uri: https://api.easypost.com/v2/partners/stripe_public_key - response: - body: - string: '{"public_key": "pk_x3JSr5eOVWNTLRej8cZDde9VQ0AT5"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '49' - content-type: - - application/json; charset=utf-8 - etag: - - W/"86cc970265a111486b443bf66ef85e91" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e26463d02ae787d9a600340738 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb12nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '0.014255' - x-version-label: - - easypost-202305161731-3a88337a74-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '0' - Content-type: - - application/x-www-form-urlencoded - authorization: - - - user-agent: - - - method: POST - uri: https://api.stripe.com/v1/tokens?card%5Bexp_month%5D=05&card%5Bexp_year%5D=2028 - response: - body: - string: '{"id": "tok_0N8SvuDqT4huGUvdQzq2RjAj", "object": "token", "card": {"id": - "card_0N8SvuDqT4huGUvdh2Usi31i", "object": "card", "address_city": null, "address_country": - null, "address_line1": null, "address_line1_check": null, "address_line2": - null, "address_state": null, "address_zip": null, "address_zip_check": null, - "brand": "Visa", "country": "US", "cvc_check": "unchecked", "dynamic_last4": - null, "exp_month": 5, "exp_year": 2028, "funding": "credit", "last4": "6170", - "name": null, "tokenization_method": null, "wallet": null}, "client_ip": "", - "created": 1684262954, "livemode": true, "type": "card", "used": false}' - headers: - Access-Control-Allow-Credentials: - - 'true' - Access-Control-Allow-Methods: - - GET, POST, HEAD, OPTIONS, DELETE - Access-Control-Allow-Origin: - - '*' - Access-Control-Expose-Headers: - - Request-Id, Stripe-Manage-Version, X-Stripe-External-Auth-Required, X-Stripe-Privileged-Session-Required - Access-Control-Max-Age: - - '300' - Cache-Control: - - no-cache, no-store - Connection: - - keep-alive - Content-Length: - - '739' - Content-Type: - - application/json - Date: - - Tue, 16 May 2023 18:49:14 GMT - Idempotency-Key: - - b1fa9637-7528-40c3-8c10-401114571781 - Original-Request: - - req_mZ4fDlnwWczYVU - Request-Id: - - req_mZ4fDlnwWczYVU - Server: - - nginx - Strict-Transport-Security: - - max-age=63072000; includeSubDomains; preload - Stripe-Should-Retry: - - 'false' - Stripe-Version: - - '2020-08-27' - status: - code: 200 - message: OK -- request: - body: '{"credit_card": {"stripe_object_id": "tok_0N8SvuDqT4huGUvdQzq2RjAj", "priority": - "primary"}}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '92' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/credit_cards - response: - body: - string: '{"id": "card_01c526a7012f4d35b1e849c44529fded", "disabled_at": null, - "object": "CreditCard", "name": null, "last4": "6170", "exp_month": 5, "exp_year": - 2028, "brand": "Visa"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '159' - content-type: - - application/json; charset=utf-8 - etag: - - W/"09a287defb2f677abf5de0d7cbce895d" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e26463d02ae787d9a600340757 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb3nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '2.988953' - x-version-label: - - easypost-202305161731-3a88337a74-master - x-xss-protection: - - 1; mode=block - status: - code: 201 - message: Created -version: 1 diff --git a/tests/cassettes/test_referral_customer_add_credit_card_from_stripe.yaml b/tests/cassettes/test_referral_customer_add_credit_card_from_stripe.yaml new file mode 100644 index 00000000..8e6ced6e --- /dev/null +++ b/tests/cassettes/test_referral_customer_add_credit_card_from_stripe.yaml @@ -0,0 +1,69 @@ +interactions: +- request: + body: '{"credit_card": {"payment_method_id": "pm_0Pn6bQDqT4huGUvd0CjpRerH", "priority": + "primary"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '92' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/credit_cards + response: + body: + string: '{"error": {"code": "CREDIT_CARD.NOT_FOUND", "message": "Stripe::PaymentMethod + does not exist for the specified reference_id", "errors": []}}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '134' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 327fc0ad677d76bee2b7da9200097934 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb34nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb2nuq 99aac35317 + x-runtime: + - '0.426801' + x-version-label: + - easypost-202501062233-3c9302ef23-master + x-xss-protection: + - 1; mode=block + status: + code: 404 + message: Not Found +version: 1 diff --git a/tests/cassettes/test_referral_customer_all.yaml b/tests/cassettes/test_referral_customer_all.yaml index 6647dab7..5c6182b6 100644 --- a/tests/cassettes/test_referral_customer_all.yaml +++ b/tests/cassettes/test_referral_customer_all.yaml @@ -22,7 +22,7 @@ interactions: false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_35cb81fb8af1454dabf1f6afa7330634", "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": "", "verified": true, "created_at": "2022-04-27T20:20:52Z", "default_carbon_offset": @@ -30,20 +30,20 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}, {"id": "user_fa93cc16bcc24c078ee057ce82f38eed", + "0.50", "email": "", "children": []}, {"id": "user_fa93cc16bcc24c078ee057ce82f38eed", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-04-28T22:34:38Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_4a22730cdc844ce1bc2efbed999c869f", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-04-29T19:35:33Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_488e391395f4416196a31965fecac409", "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": "", "verified": true, "created_at": "2022-05-02T18:48:22Z", "default_carbon_offset": @@ -51,7 +51,7 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}]}' + "0.50", "email": "", "children": []}]}' headers: cache-control: - private, no-cache, no-store @@ -59,8 +59,6 @@ interactions: - '2858' content-type: - application/json; charset=utf-8 - etag: - - W/"57b616a535a9df8008e17cdd2be65c48" expires: - '0' pragma: @@ -73,27 +71,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e06463d029e787d9a4003406fa + - 8e8eb62667c9fc19e2b97b740018a73e x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.151188' + - '0.193565' x-version-label: - - easypost-202305161817-392deb98e4-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_referral_customer_create.yaml b/tests/cassettes/test_referral_customer_create.yaml index d0d256ef..c7c97f00 100644 --- a/tests/cassettes/test_referral_customer_create.yaml +++ b/tests/cassettes/test_referral_customer_create.yaml @@ -1,6 +1,7 @@ interactions: - request: - body: '{"user": {"name": "test test", "email": "test@test.com", "phone": "8888888888"}}' + body: '{"user": {"name": "Test Referral", "email": "test@example.com", "phone": + "5555555555"}}' headers: Accept: - '*/*' @@ -9,7 +10,7 @@ interactions: Connection: - keep-alive Content-Length: - - '80' + - '87' Content-Type: - application/json authorization: @@ -20,26 +21,24 @@ interactions: uri: https://api.easypost.com/v2/referral_customers response: body: - string: '{"id": "user_13a70eac666646e9ab5fff36960df91b", "object": "User", "parent_id": - null, "name": "test test", "phone_number": "", "verified": true, - "created_at": "2023-05-16T18:49:11Z", "default_carbon_offset": false, "has_elevate_access": + string: '{"id": "user_0857ace4c8cc4c1c820c0020f63b58e3", "object": "User", "parent_id": + null, "name": "Test Referral", "phone_number": "", "verified": true, + "created_at": "2025-11-14T21:41:14Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0375", "default_insurance_amount": "50.00", "insurance_fee_rate": - "0.005", "insurance_fee_minimum": "0.25", "email": "", "children": + "0.01", "insurance_fee_minimum": "0.50", "email": "", "children": [], "api_keys": [{"object": "ApiKey", "key": "", "mode": "test", - "created_at": "2023-05-16T18:49:11Z", "active": true, "id": "ak_09a343d0a9ba41b0a8e09dc0a6c6a8ed"}, + "created_at": "2025-11-14T21:41:15Z", "active": true, "id": "ak_942665c2509a4d67af5d117a22ebbe2f"}, {"object": "ApiKey", "key": "", "mode": "production", "created_at": - "2023-05-16T18:49:11Z", "active": true, "id": "ak_c0ff406ccc5744f0a4f8564f89f5fa47"}]}' + "2025-11-14T21:41:15Z", "active": true, "id": "ak_6e11f073d4b74271b69ff9de29131033"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '1018' + - '1021' content-type: - application/json; charset=utf-8 - etag: - - W/"54a0a3bccd5f726faf0be4e902b030fa" expires: - '0' pragma: @@ -57,20 +56,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e06463d027e787d9a200340637 + - 7265c2fb6917a1fae786c164010a6c1a x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq c0061e0a2e + - extlb1nuq cbbd141214 x-runtime: - - '0.941512' + - '0.677840' x-version-label: - - easypost-202305161731-3a88337a74-master + - easypost-202511141214-a539f53042-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_user_all_api_keys.yaml b/tests/cassettes/test_referral_customer_retrieve_easypost_stripe_api_key.yaml similarity index 59% rename from tests/cassettes/test_user_all_api_keys.yaml rename to tests/cassettes/test_referral_customer_retrieve_easypost_stripe_api_key.yaml index 60380f81..b1b060fa 100644 --- a/tests/cassettes/test_user_all_api_keys.yaml +++ b/tests/cassettes/test_referral_customer_retrieve_easypost_stripe_api_key.yaml @@ -13,24 +13,19 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/api_keys + uri: https://api.easypost.com/v2/partners/stripe_public_key response: body: - string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "keys": [{"object": - "ApiKey", "active": true, "key": "", "mode": "test", "created_at": - "2022-02-24T20:59:05Z", "id": "ak_16f993eae7984eab94e0957a78bee407"}, {"object": - "ApiKey", "active": true, "key": "", "mode": "production", "created_at": - "2022-02-24T20:59:14Z", "id": "ak_62524a9c3f684f65ab9eccbf70950df8"}], "children": - []}' + string: '{"public_key": "pk_x3JSr5eOVWNTLRej8cZDde9VQ0AT5"}' headers: cache-control: - private, no-cache, no-store content-length: - - '463' + - '49' content-type: - application/json; charset=utf-8 - etag: - - W/"93631940720c42f55c0b598f97083e11" + easypost-api-version: + - '2015-01-01' expires: - '0' pragma: @@ -41,6 +36,8 @@ interactions: - max-age=31536000; includeSubDomains; preload transfer-encoding: - chunked + vary: + - EasyPost-Api-Version x-backend: - easypost x-content-type-options: @@ -48,20 +45,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e086463b6c8e787409c002d8c1b + - 91d0a0fa6ab4301ce2b97bb400af2fd1 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - web103azw x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3azw f29267e751 + - extlb2azw 07fb4d8f06 x-runtime: - - '0.184135' + - '0.029468' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202609231716-41b3efb4ec-main x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_referral_customer_update.yaml b/tests/cassettes/test_referral_customer_update.yaml index 187917c7..d724b78f 100644 --- a/tests/cassettes/test_referral_customer_update.yaml +++ b/tests/cassettes/test_referral_customer_update.yaml @@ -22,7 +22,7 @@ interactions: false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_35cb81fb8af1454dabf1f6afa7330634", "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": "", "verified": true, "created_at": "2022-04-27T20:20:52Z", "default_carbon_offset": @@ -30,20 +30,20 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}, {"id": "user_fa93cc16bcc24c078ee057ce82f38eed", + "0.50", "email": "", "children": []}, {"id": "user_fa93cc16bcc24c078ee057ce82f38eed", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-04-28T22:34:38Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_4a22730cdc844ce1bc2efbed999c869f", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-04-29T19:35:33Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_488e391395f4416196a31965fecac409", "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": "", "verified": true, "created_at": "2022-05-02T18:48:22Z", "default_carbon_offset": @@ -51,13 +51,13 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}, {"id": "user_91b120087ff843349b9a3f0675572bb1", + "0.50", "email": "", "children": []}, {"id": "user_91b120087ff843349b9a3f0675572bb1", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-05-02T19:04:10Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_4ae0d572fbe542deb7efa51935a5b826", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-05-02T23:08:40Z", "default_carbon_offset": @@ -65,20 +65,20 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}, {"id": "user_71189529eba747ce83aa69303e22c7df", + "0.50", "email": "", "children": []}, {"id": "user_71189529eba747ce83aa69303e22c7df", "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": "", "verified": true, "created_at": "2022-05-04T22:05:27Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_c13290f1f6a442d79657b8bfe5daeeba", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-05-05T16:54:58Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_b73fdc6c6a58421ea884a82ad14520a5", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-05-05T16:55:59Z", "default_carbon_offset": @@ -86,16 +86,14 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}]}' + "0.50", "email": "", "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '5654' + - '5650' content-type: - application/json; charset=utf-8 - etag: - - W/"b6a373ba9757228293c75bf6b3006941" expires: - '0' pragma: @@ -108,27 +106,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e46463d028e787d9a3003406c3 + - 8e8eb62667c9fc18e2b97b730018a680 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.297082' + - '0.328114' x-version-label: - - easypost-202305161817-392deb98e4-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -163,8 +159,6 @@ interactions: - '59' content-type: - application/json; charset=utf-8 - etag: - - W/"7b30d603e3257aee787616dc99d6d4af" expires: - '0' pragma: @@ -177,25 +171,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e46463d028e787d9a3003406df + - 8e8eb62667c9fc18e2b97b730018a704 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.135119' + - '0.041201' x-version-label: - - easypost-202305161731-3a88337a74-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_referral_get_next_page.yaml b/tests/cassettes/test_referral_get_next_page.yaml index 2f657834..7db16dbe 100644 --- a/tests/cassettes/test_referral_get_next_page.yaml +++ b/tests/cassettes/test_referral_get_next_page.yaml @@ -22,7 +22,7 @@ interactions: false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_35cb81fb8af1454dabf1f6afa7330634", "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": "", "verified": true, "created_at": "2022-04-27T20:20:52Z", "default_carbon_offset": @@ -30,20 +30,20 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}, {"id": "user_fa93cc16bcc24c078ee057ce82f38eed", + "0.50", "email": "", "children": []}, {"id": "user_fa93cc16bcc24c078ee057ce82f38eed", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-04-28T22:34:38Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_4a22730cdc844ce1bc2efbed999c869f", "object": "User", "parent_id": null, "name": "test test", "phone_number": "", "verified": true, "created_at": "2022-04-29T19:35:33Z", "default_carbon_offset": false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": - "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.25", "email": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": "", "children": []}, {"id": "user_488e391395f4416196a31965fecac409", "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": "", "verified": true, "created_at": "2022-05-02T18:48:22Z", "default_carbon_offset": @@ -51,7 +51,7 @@ interactions: "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": - "0.25", "email": "", "children": []}]}' + "0.50", "email": "", "children": []}]}' headers: cache-control: - private, no-cache, no-store @@ -59,8 +59,6 @@ interactions: - '2858' content-type: - application/json; charset=utf-8 - etag: - - W/"57b616a535a9df8008e17cdd2be65c48" expires: - '0' pragma: @@ -78,20 +76,109 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463d029e787d9a500340714 + - 8e8eb62b67c9fc19e2b97b750018a7a5 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.345269' + - '0.184353' x-version-label: - - easypost-202305161731-3a88337a74-master + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/referral_customers?before_id=user_488e391395f4416196a31965fecac409&page_size=5 + response: + body: + string: '{"has_more": false, "referral_customers": [{"id": "user_4a22730cdc844ce1bc2efbed999c869f", + "object": "User", "parent_id": null, "name": "test test", "phone_number": + "", "verified": true, "created_at": "2022-04-29T19:35:33Z", "default_carbon_offset": + false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": + "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": + null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": + "", "children": []}, {"id": "user_fa93cc16bcc24c078ee057ce82f38eed", + "object": "User", "parent_id": null, "name": "test test", "phone_number": + "", "verified": true, "created_at": "2022-04-28T22:34:38Z", "default_carbon_offset": + false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": + "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": + null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": + "", "children": []}, {"id": "user_35cb81fb8af1454dabf1f6afa7330634", + "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": + "", "verified": true, "created_at": "2022-04-27T20:20:52Z", "default_carbon_offset": + false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": + "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", + "recharge_threshold": "0.00", "has_billing_method": true, "cc_fee_rate": "0.0325", + "default_insurance_amount": "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": + "0.50", "email": "", "children": []}, {"id": "user_634b6daa05744bfaa205058f06864363", + "object": "User", "parent_id": null, "name": "Firstname Lastname", "phone_number": + "", "verified": true, "created_at": "2022-04-26T15:50:28Z", "default_carbon_offset": + false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": + "0.00000", "recharge_amount": null, "secondary_recharge_amount": null, "recharge_threshold": + null, "has_billing_method": null, "cc_fee_rate": "0.0325", "default_insurance_amount": + "50.00", "insurance_fee_rate": "0.005", "insurance_fee_minimum": "0.50", "email": + "", "children": []}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2285' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62b67c9fc19e2b97b750018a7e4 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb54nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.273572' + x-version-label: + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_refund_all.yaml b/tests/cassettes/test_refund_all.yaml index 53339149..5f56c089 100644 --- a/tests/cassettes/test_refund_all.yaml +++ b/tests/cassettes/test_refund_all.yaml @@ -16,10 +16,10 @@ interactions: uri: https://api.easypost.com/v2/refunds?page_size=5 response: body: - string: '{"refunds": [{"id": "rfnd_bad47afb0a9743b6acbf1ecfad761aa5", "object": - "Refund", "created_at": "2023-05-16T15:09:03Z", "updated_at": "2023-05-16T15:09:03Z", - "tracking_code": "9400100104262210314976", "confirmation_number": null, "status": - "submitted", "carrier": "USPS", "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2"}], + string: '{"refunds": [{"id": "rfnd_36f1ce2418c34aee8c253bc785e4ddae", "object": + "Refund", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "tracking_code": "9400100208303109500775", "confirmation_number": null, "status": + "submitted", "carrier": "USPS", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c"}], "has_more": false}' headers: cache-control: @@ -28,8 +28,6 @@ interactions: - '326' content-type: - application/json; charset=utf-8 - etag: - - W/"9201c691d2cf85a3b6d58c01209062c9" expires: - '0' pragma: @@ -47,20 +45,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e464639c8fe786a73800200900 + - 8e8eb62967c9fc1ce2b97b7a0018aa35 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.120362' + - '0.037706' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_refund_create.yaml b/tests/cassettes/test_refund_create.yaml index 2a9ae80b..ae824ebb 100644 --- a/tests/cassettes/test_refund_create.yaml +++ b/tests/cassettes/test_refund_create.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T15:09:01Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210314976", "updated_at": "2023-05-16T15:09:02Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_97548187f3fb11edaf24ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T15:09:01+00:00", "updated_at": "2023-05-16T15:09:01+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_5fb09d738fa042868319f04c06619388", - "object": "Parcel", "created_at": "2023-05-16T15:09:01Z", "updated_at": "2023-05-16T15:09:01Z", + string: '{"id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "created_at": "2025-03-06T19:48:42Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109500775", "updated_at": + "2025-03-06T19:48:43Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_022dc26ffac411ef8215ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:42+00:00", "updated_at": + "2025-03-06T19:48:42+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_f5e430a8cc534f2daf3fa33dba28d22a", "object": + "Parcel", "created_at": "2025-03-06T19:48:42Z", "updated_at": "2025-03-06T19:48:42Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_882b473b3d8744c6961e2e0d7dbfc235", - "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T15:09:02Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_2ad09f05a2e046f1bf32487531f39dee", + "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:43Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/6707c012152345928040d50307869170.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e862022dfa87524843bc70b0b440b1df21.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_053b9306842b41c6a11342e2eade3dda", "object": - "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_705a363033894072a568a34daa8dc7de", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a90c2a5c4ac244fcb967fa765e27b49e", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f8d3858e00544c2ba89f54d11fb6cd5c", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_f8d3858e00544c2ba89f54d11fb6cd5c", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_45f92a81b4174285b025d8f29e1d87ab", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210314976", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T15:09:02Z", "updated_at": - "2023-05-16T15:09:02Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", "carrier": "USPS", + null}, "rates": [{"id": "rate_1dd3fb8f39ed4c8f94c00090bae4e0d6", "object": + "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_136e35c9133f4a7eb8327f429d09c813", + "object": "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_eb98f20bfa29451e91eceb7335b89b77", + "object": "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_eb98f20bfa29451e91eceb7335b89b77", "object": + "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_bdaa56e02ed74f6ea2839e6ea6a4f75d", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500775", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-06T19:48:43Z", + "updated_at": "2025-03-06T19:48:43Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzQ1ZjkyYTgxYjQxNzQyODViMDI1ZDhmMjllMWQ4N2Fi"}, - "to_address": {"id": "adr_9751eebdf3fb11eda524ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T15:09:01+00:00", "updated_at": "2023-05-16T15:09:02+00:00", + "https://track.easypost.com/djE6dHJrX2JkYWE1NmUwMmVkNzRmNmVhMjgzOWU2ZWE2YTRmNzVk"}, + "to_address": {"id": "adr_022b47a5fac411efb7663cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:42+00:00", "updated_at": "2025-03-06T19:48:43+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_97548187f3fb11edaf24ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T15:09:01+00:00", "updated_at": - "2023-05-16T15:09:01+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_022dc26ffac411ef8215ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:42+00:00", "updated_at": + "2025-03-06T19:48:42+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_9751eebdf3fb11eda524ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T15:09:01+00:00", "updated_at": "2023-05-16T15:09:02+00:00", "name": + "adr_022b47a5fac411efb7663cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:42+00:00", "updated_at": "2025-03-06T19:48:43+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_9543343d31b44ec4863e3679570d73c2", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"59c8ae47e3ad6a94a1ef61808dcb4bff" expires: - '0' location: - - /api/v2/shipments/shp_9543343d31b44ec4863e3679570d73c2 + - /api/v2/shipments/shp_82abbe8e8a1f4746bfbe7c943906c52c pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e364639c8de786a7370020087d + - 8e8eb62867c9fc1ae2b97b790018a908 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '1.039921' + - '0.794691' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -179,77 +171,72 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_9543343d31b44ec4863e3679570d73c2 + uri: https://api.easypost.com/v2/shipments/shp_82abbe8e8a1f4746bfbe7c943906c52c response: body: - string: '{"created_at": "2023-05-16T15:09:01Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210314976", "updated_at": "2023-05-16T15:09:02Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_97548187f3fb11edaf24ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T15:09:01+00:00", "updated_at": "2023-05-16T15:09:01+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_5fb09d738fa042868319f04c06619388", - "object": "Parcel", "created_at": "2023-05-16T15:09:01Z", "updated_at": "2023-05-16T15:09:01Z", + string: '{"id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "created_at": "2025-03-06T19:48:42Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109500775", "updated_at": + "2025-03-06T19:48:43Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_022dc26ffac411ef8215ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:42+00:00", "updated_at": + "2025-03-06T19:48:42+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_f5e430a8cc534f2daf3fa33dba28d22a", "object": + "Parcel", "created_at": "2025-03-06T19:48:42Z", "updated_at": "2025-03-06T19:48:42Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_882b473b3d8744c6961e2e0d7dbfc235", - "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T15:09:02Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_2ad09f05a2e046f1bf32487531f39dee", + "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:43Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/6707c012152345928040d50307869170.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e862022dfa87524843bc70b0b440b1df21.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_053b9306842b41c6a11342e2eade3dda", "object": - "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_705a363033894072a568a34daa8dc7de", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a90c2a5c4ac244fcb967fa765e27b49e", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f8d3858e00544c2ba89f54d11fb6cd5c", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_f8d3858e00544c2ba89f54d11fb6cd5c", - "object": "Rate", "created_at": "2023-05-16T15:09:02Z", "updated_at": "2023-05-16T15:09:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9543343d31b44ec4863e3679570d73c2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_45f92a81b4174285b025d8f29e1d87ab", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210314976", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T15:09:03Z", "updated_at": - "2023-05-16T15:09:03Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T15:09:03Z", "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2", + null}, "rates": [{"id": "rate_1dd3fb8f39ed4c8f94c00090bae4e0d6", "object": + "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_136e35c9133f4a7eb8327f429d09c813", + "object": "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_eb98f20bfa29451e91eceb7335b89b77", + "object": "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_eb98f20bfa29451e91eceb7335b89b77", "object": + "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_bdaa56e02ed74f6ea2839e6ea6a4f75d", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500775", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:43Z", + "updated_at": "2025-03-06T19:48:43Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:43Z", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T15:09:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:43Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T03:46:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:43Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -257,9 +244,9 @@ interactions: {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrXzQ1ZjkyYTgxYjQxNzQyODViMDI1ZDhmMjllMWQ4N2Fi"}, - "to_address": {"id": "adr_9751eebdf3fb11eda524ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T15:09:01+00:00", "updated_at": "2023-05-16T15:09:02+00:00", + null}, "public_url": "https://track.easypost.com/djE6dHJrX2JkYWE1NmUwMmVkNzRmNmVhMjgzOWU2ZWE2YTRmNzVk"}, + "to_address": {"id": "adr_022b47a5fac411efb7663cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:42+00:00", "updated_at": "2025-03-06T19:48:43+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -267,15 +254,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_97548187f3fb11edaf24ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T15:09:01+00:00", "updated_at": - "2023-05-16T15:09:01+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_022dc26ffac411ef8215ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:42+00:00", "updated_at": + "2025-03-06T19:48:42+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_9751eebdf3fb11eda524ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T15:09:01+00:00", "updated_at": "2023-05-16T15:09:02+00:00", "name": + "adr_022b47a5fac411efb7663cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:42+00:00", "updated_at": "2025-03-06T19:48:43+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -285,17 +272,14 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_9543343d31b44ec4863e3679570d73c2", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '8119' + - '7586' content-type: - application/json; charset=utf-8 - etag: - - W/"12d69ff56c9b46e73ebb342e9b694ba6" expires: - '0' pragma: @@ -313,27 +297,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e364639c8fe786a737002008d1 + - 8e8eb62867c9fc1be2b97b790018a9b2 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.152610' + - '0.170424' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: code: 200 message: OK - request: - body: '{"refund": {"carrier": "USPS", "tracking_codes": ["9400100104262210314976"]}}' + body: '{"refund": {"carrier": "USPS", "tracking_codes": ["9400100208303109500775"]}}' headers: Accept: - '*/*' @@ -353,10 +337,10 @@ interactions: uri: https://api.easypost.com/v2/refunds response: body: - string: '[{"id": "rfnd_bad47afb0a9743b6acbf1ecfad761aa5", "object": "Refund", - "created_at": "2023-05-16T15:09:03Z", "updated_at": "2023-05-16T15:09:03Z", - "tracking_code": "9400100104262210314976", "confirmation_number": null, "status": - "submitted", "carrier": "USPS", "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2"}]' + string: '[{"id": "rfnd_36f1ce2418c34aee8c253bc785e4ddae", "object": "Refund", + "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "tracking_code": "9400100208303109500775", "confirmation_number": null, "status": + "submitted", "carrier": "USPS", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c"}]' headers: cache-control: - private, no-cache, no-store @@ -364,8 +348,6 @@ interactions: - '297' content-type: - application/json; charset=utf-8 - etag: - - W/"413dcb5155378096d15b1f16151671c3" expires: - '0' pragma: @@ -378,25 +360,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e364639c8fe786a737002008e0 + - 8e8eb62867c9fc1be2b97b790018a9f9 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.064801' + - '0.079742' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_refund_get_next_page.yaml b/tests/cassettes/test_refund_get_next_page.yaml index 74437c05..4efa7f31 100644 --- a/tests/cassettes/test_refund_get_next_page.yaml +++ b/tests/cassettes/test_refund_get_next_page.yaml @@ -16,10 +16,10 @@ interactions: uri: https://api.easypost.com/v2/refunds?page_size=5 response: body: - string: '{"refunds": [{"id": "rfnd_bad47afb0a9743b6acbf1ecfad761aa5", "object": - "Refund", "created_at": "2023-05-16T15:09:03Z", "updated_at": "2023-05-16T15:09:03Z", - "tracking_code": "9400100104262210314976", "confirmation_number": null, "status": - "submitted", "carrier": "USPS", "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2"}], + string: '{"refunds": [{"id": "rfnd_36f1ce2418c34aee8c253bc785e4ddae", "object": + "Refund", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "tracking_code": "9400100208303109500775", "confirmation_number": null, "status": + "submitted", "carrier": "USPS", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c"}], "has_more": false}' headers: cache-control: @@ -28,8 +28,6 @@ interactions: - '326' content-type: - application/json; charset=utf-8 - etag: - - W/"9201c691d2cf85a3b6d58c01209062c9" expires: - '0' pragma: @@ -47,20 +45,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e164639c8fe786a73900200920 + - 8e8eb62867c9fc1ce2b97b7b0018aa67 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb33nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.044923' + - '0.036587' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_refund_retrieve.yaml b/tests/cassettes/test_refund_retrieve.yaml index fa9de1c1..bd457fa9 100644 --- a/tests/cassettes/test_refund_retrieve.yaml +++ b/tests/cassettes/test_refund_retrieve.yaml @@ -16,10 +16,10 @@ interactions: uri: https://api.easypost.com/v2/refunds?page_size=5 response: body: - string: '{"refunds": [{"id": "rfnd_bad47afb0a9743b6acbf1ecfad761aa5", "object": - "Refund", "created_at": "2023-05-16T15:09:03Z", "updated_at": "2023-05-16T15:09:03Z", - "tracking_code": "9400100104262210314976", "confirmation_number": null, "status": - "submitted", "carrier": "USPS", "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2"}], + string: '{"refunds": [{"id": "rfnd_36f1ce2418c34aee8c253bc785e4ddae", "object": + "Refund", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "tracking_code": "9400100208303109500775", "confirmation_number": null, "status": + "submitted", "carrier": "USPS", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c"}], "has_more": false}' headers: cache-control: @@ -28,8 +28,6 @@ interactions: - '326' content-type: - application/json; charset=utf-8 - etag: - - W/"9201c691d2cf85a3b6d58c01209062c9" expires: - '0' pragma: @@ -47,20 +45,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e464639c90e786a73a00200932 + - 8e8eb62967c9fc1ce2b97b930018aa8f x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.039446' + - '0.037489' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -80,13 +78,13 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/refunds/rfnd_bad47afb0a9743b6acbf1ecfad761aa5 + uri: https://api.easypost.com/v2/refunds/rfnd_36f1ce2418c34aee8c253bc785e4ddae response: body: - string: '{"id": "rfnd_bad47afb0a9743b6acbf1ecfad761aa5", "object": "Refund", - "created_at": "2023-05-16T15:09:03Z", "updated_at": "2023-05-16T15:09:03Z", - "tracking_code": "9400100104262210314976", "confirmation_number": null, "status": - "submitted", "carrier": "USPS", "shipment_id": "shp_9543343d31b44ec4863e3679570d73c2"}' + string: '{"id": "rfnd_36f1ce2418c34aee8c253bc785e4ddae", "object": "Refund", + "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "tracking_code": "9400100208303109500775", "confirmation_number": null, "status": + "submitted", "carrier": "USPS", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c"}' headers: cache-control: - private, no-cache, no-store @@ -94,8 +92,6 @@ interactions: - '295' content-type: - application/json; charset=utf-8 - etag: - - W/"88592e272bcea6ef2c599b8db188fa85" expires: - '0' pragma: @@ -108,25 +104,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e464639c90e786a73a0020093e + - 8e8eb62967c9fc1ce2b97b930018aaa8 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.127959' + - '0.035569' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_report_all.yaml b/tests/cassettes/test_report_all.yaml index 35d677d1..e522c345 100644 --- a/tests/cassettes/test_report_all.yaml +++ b/tests/cassettes/test_report_all.yaml @@ -16,40 +16,14 @@ interactions: uri: https://api.easypost.com/v2/reports/shipment?page_size=5 response: body: - string: '{"reports": [{"id": "shprep_2d2aa29b059e4f908df1470a6508d20a", "object": - "ShipmentReport", "created_at": "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:54Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "available", "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/fdef14e058074a9fbd5b7a7d972c3db9.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153159Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=92144c7a4aca05676ae2741eeacbae49e00f03f0fcbbeeeb3d7b8b32a0d2d6f3", - "url_expires_at": "2023-05-16T15:32:29Z", "include_children": false}, {"id": - "shprep_1ad45dc68aa744f5ad61bfe46d8ee49e", "object": "ShipmentReport", "created_at": - "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:53Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/f16b25ac5f0342208aa15bd94093dc8e.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153159Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=d7c0f74f17eaae8437c825ebdeb9440a57c1513a830fc8d248c8293995867df8", - "url_expires_at": "2023-05-16T15:32:29Z", "include_children": false}, {"id": - "shprep_4278c856e8264aeb820b4ade399e7d58", "object": "ShipmentReport", "created_at": - "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:53Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/7529ca86b6264ecf854b6828712d404a.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153159Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=995b7a6ab086822d9e903b7588ebe7d4372013b60930e139bdddfe3979c4ff79", - "url_expires_at": "2023-05-16T15:32:29Z", "include_children": false}, {"id": - "shprep_60c43d5d13bb4b34bfe4fa4c937a2ef1", "object": "ShipmentReport", "created_at": - "2023-05-16T15:28:52Z", "updated_at": "2023-05-16T15:28:53Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/a6eaf112fd684b469b8d958fab274382.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153159Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=7cf24b5d62eff3dc5b43f0db516bba1a03c696d1c12feb83a572b7de7ee39087", - "url_expires_at": "2023-05-16T15:32:29Z", "include_children": false}, {"id": - "shprep_5fa6db008b294b62a87fe844445ce284", "object": "ShipmentReport", "created_at": - "2023-02-01T23:02:05Z", "updated_at": "2023-02-01T23:02:18Z", "start_date": - "2022-10-01", "end_date": "2022-10-01", "mode": "test", "status": "empty", - "url": null, "url_expires_at": null, "include_children": false}], "has_more": - true}' + string: '{"has_more": false, "reports": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '3067' + - '32' content-type: - application/json; charset=utf-8 - etag: - - W/"0e41d00cfce84e76e52a1c5abe894af7" expires: - '0' pragma: @@ -67,20 +41,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e026463a1efe786b0630024c850 + - 8e8eb62a67c9fc1de2b97b980018abca x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.036374' + - '0.065813' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_report_create_report.yaml b/tests/cassettes/test_report_create_report.yaml index b5809ecb..fbb96623 100644 --- a/tests/cassettes/test_report_create_report.yaml +++ b/tests/cassettes/test_report_create_report.yaml @@ -20,19 +20,18 @@ interactions: uri: https://api.easypost.com/v2/reports/shipment response: body: - string: '{"id": "shprep_60c43d5d13bb4b34bfe4fa4c937a2ef1", "object": "ShipmentReport", - "created_at": "2023-05-16T15:28:52Z", "updated_at": "2023-05-16T15:28:52Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "new", "url": null, "url_expires_at": null, "include_children": false}' + string: '{"columns": null, "created_at": "2025-03-06T19:48:44Z", "end_date": + "2022-05-04", "id": "shprep_d1df1bfb4c9a4983976b8d4550871777", "include_children": + null, "mode": "test", "object": "ShipmentReport", "start_date": "2022-05-04", + "status": "new", "updated_at": null, "url": null, "url_expires_at": null, + "utc_offset": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '283' + - '298' content-type: - application/json; charset=utf-8 - etag: - - W/"80d9da60e6cc1fa9d4774b8ac3b5ef23" expires: - '0' pragma: @@ -50,20 +49,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e16463a134e786afbb0021bb80 + - 8e8eb62667c9fc1ce2b97b940018aada x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.076758' + - '0.069204' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_report_create_with_additional_columns.yaml b/tests/cassettes/test_report_create_with_additional_columns.yaml index 929cbde4..362fa58d 100644 --- a/tests/cassettes/test_report_create_with_additional_columns.yaml +++ b/tests/cassettes/test_report_create_with_additional_columns.yaml @@ -21,19 +21,18 @@ interactions: uri: https://api.easypost.com/v2/reports/shipment response: body: - string: '{"id": "shprep_4278c856e8264aeb820b4ade399e7d58", "object": "ShipmentReport", - "created_at": "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:53Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "new", "url": null, "url_expires_at": null, "include_children": false}' + string: '{"columns": "created_at,id,tracking_code,status,from_address_id,from_name,from_company,from_street1,from_street2,from_city,from_state,from_zip,from_country,from_residential,to_address_id,to_name,to_company,to_street1,to_street2,to_city,to_state,to_zip,to_country,to_residential,parcel_id,length,width,height,weight,predefined_package,postage_label_created_at,rate_id,service,carrier,rate,insured_value,is_return,refund_status,reference,label_fee,postage_fee,insurance_fee,options,usps_zone,from_name,from_company", + "created_at": "2025-03-06T19:48:44Z", "end_date": "2022-05-04", "id": "shprep_62cc578e63f945bf994b8a0513de565c", + "include_children": null, "mode": "test", "object": "ShipmentReport", "start_date": + "2022-05-04", "status": "new", "updated_at": null, "url": null, "url_expires_at": + null, "utc_offset": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '283' + - '795' content-type: - application/json; charset=utf-8 - etag: - - W/"b2441501e7f8cd92d45b23389d4343ac" expires: - '0' pragma: @@ -51,20 +50,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e66463a135e786afbc0021bb99 + - 8e8eb62967c9fc1ce2b97b950018ab11 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.054822' + - '0.068570' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_report_create_with_columns.yaml b/tests/cassettes/test_report_create_with_columns.yaml index de163f1d..15628c8b 100644 --- a/tests/cassettes/test_report_create_with_columns.yaml +++ b/tests/cassettes/test_report_create_with_columns.yaml @@ -20,19 +20,18 @@ interactions: uri: https://api.easypost.com/v2/reports/shipment response: body: - string: '{"id": "shprep_1ad45dc68aa744f5ad61bfe46d8ee49e", "object": "ShipmentReport", - "created_at": "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:53Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "new", "url": null, "url_expires_at": null, "include_children": false}' + string: '{"columns": "usps_zone", "created_at": "2025-03-06T19:48:45Z", "end_date": + "2022-05-04", "id": "shprep_650d0c092bad411a929767abf466713b", "include_children": + null, "mode": "test", "object": "ShipmentReport", "start_date": "2022-05-04", + "status": "new", "updated_at": null, "url": null, "url_expires_at": null, + "utc_offset": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '283' + - '305' content-type: - application/json; charset=utf-8 - etag: - - W/"6e0c5428a247cbebb24e929a6c323b31" expires: - '0' pragma: @@ -50,20 +49,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e16463a135e786afbd0021bbb3 + - 8e8eb62867c9fc1ce2b97b960018ab43 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.040543' + - '0.086541' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_report_get_next_page.yaml b/tests/cassettes/test_report_get_next_page.yaml index 5611e84e..1ca3ddfd 100644 --- a/tests/cassettes/test_report_get_next_page.yaml +++ b/tests/cassettes/test_report_get_next_page.yaml @@ -16,40 +16,14 @@ interactions: uri: https://api.easypost.com/v2/reports/shipment?page_size=5 response: body: - string: '{"reports": [{"id": "shprep_2d2aa29b059e4f908df1470a6508d20a", "object": - "ShipmentReport", "created_at": "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:54Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "available", "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/fdef14e058074a9fbd5b7a7d972c3db9.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=fab52456b5638b2f0713ce6a3ad92aef2f8e2be744757af477af6ff3a88e1803", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}, {"id": - "shprep_1ad45dc68aa744f5ad61bfe46d8ee49e", "object": "ShipmentReport", "created_at": - "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:53Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/f16b25ac5f0342208aa15bd94093dc8e.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=0da3ab353822948d52698df6e2b1b2a03a48e13afea8872dbcdeafbbd9f23e46", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}, {"id": - "shprep_4278c856e8264aeb820b4ade399e7d58", "object": "ShipmentReport", "created_at": - "2023-05-16T15:28:53Z", "updated_at": "2023-05-16T15:28:53Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/7529ca86b6264ecf854b6828712d404a.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=208f50c63dc4c06d88a34618aaa286cc78307d42d0c152ea13afd16f136fbedf", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}, {"id": - "shprep_60c43d5d13bb4b34bfe4fa4c937a2ef1", "object": "ShipmentReport", "created_at": - "2023-05-16T15:28:52Z", "updated_at": "2023-05-16T15:28:53Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20230516/a6eaf112fd684b469b8d958fab274382.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=5edc67dacee2e1a42078fb13406835142d07669bbbbfb202c8846f7add1a3deb", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}, {"id": - "shprep_5fa6db008b294b62a87fe844445ce284", "object": "ShipmentReport", "created_at": - "2023-02-01T23:02:05Z", "updated_at": "2023-02-01T23:02:18Z", "start_date": - "2022-10-01", "end_date": "2022-10-01", "mode": "test", "status": "empty", - "url": null, "url_expires_at": null, "include_children": false}], "has_more": - true}' + string: '{"has_more": false, "reports": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '3067' + - '32' content-type: - application/json; charset=utf-8 - etag: - - W/"f2b7733f0754e65619e75858ebbb96f2" expires: - '0' pragma: @@ -62,112 +36,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e046463a1ebe786b0610024c709 + - 8e8eb62767c9fc1de2b97b990018ac05 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.049864' + - '0.041104' x-version-label: - - easypost-202305152249-750e1e7d95-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - authorization: - - - user-agent: - - - method: GET - uri: https://api.easypost.com/v2/reports/shipment?before_id=shprep_5fa6db008b294b62a87fe844445ce284&page_size=5 - response: - body: - string: '{"reports": [{"id": "shprep_c4263da0100a4175a929448ce1aba86d", "object": - "ShipmentReport", "created_at": "2023-02-01T23:02:04Z", "updated_at": "2023-02-01T23:02:18Z", - "start_date": "2022-10-01", "end_date": "2022-10-01", "mode": "test", "status": - "empty", "url": null, "url_expires_at": null, "include_children": false}, - {"id": "shprep_e754d2201b8a48fe8538f5abec8c4b14", "object": "ShipmentReport", - "created_at": "2022-08-25T18:03:59Z", "updated_at": "2022-08-25T18:03:59Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "available", "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20220825/a73185afe76b48158fd408c4ae1f4d19.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=9ad01063c7559cd963993d77c42a224d1d5158f7ebfaceb339fd48c24796a961", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}, {"id": - "shprep_ada0651fb6714f50b1ee5c9924468ab0", "object": "ShipmentReport", "created_at": - "2022-08-25T18:03:59Z", "updated_at": "2022-08-25T18:03:59Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20220825/59b6279972f34e07b7ebc670ad0f486e.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=ed061e2a0a366d3ea5a77cecb95689808b70bccfa33d547d0964efc6ac4f5e84", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}, {"id": - "shprep_34bee3bed97a473caacfd74512d55c76", "object": "ShipmentReport", "created_at": - "2022-08-25T18:03:59Z", "updated_at": "2022-08-25T18:03:59Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20220825/56298e793dc94db49723a09d2bb836f1.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=ded6ee72398f5a6ee2c432540c8ae1458cea4345e1bdff88434f9b0ebde69ee5", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}, {"id": - "shprep_2cae3cd35d9b4e4cae0d35cb09e5b31a", "object": "ShipmentReport", "created_at": - "2022-08-25T18:03:58Z", "updated_at": "2022-08-25T18:03:59Z", "start_date": - "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": "available", - "url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/shipment_report/20220825/2aff070ada83422190f0b01fd40d222b.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAY27LO6YQQSFK3MJI%2F20230516%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20230516T153155Z&X-Amz-Expires=30&X-Amz-SignedHeaders=host&X-Amz-Signature=9421f886b49018c2e572de038b1347ff5e565f6750137512dfd376399ab76a8e", - "url_expires_at": "2023-05-16T15:32:25Z", "include_children": false}], "has_more": - true}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '3067' - content-type: - - application/json; charset=utf-8 - etag: - - W/"b53e16cd7e47f3970bd89b662a5de434" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - de846e046463a1ebe786b0610024c71a - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb6nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 - x-runtime: - - '0.057884' - x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_report_retrieve_shipment_report.yaml b/tests/cassettes/test_report_retrieve_shipment_report.yaml index a740a154..509810c3 100644 --- a/tests/cassettes/test_report_retrieve_shipment_report.yaml +++ b/tests/cassettes/test_report_retrieve_shipment_report.yaml @@ -20,19 +20,18 @@ interactions: uri: https://api.easypost.com/v2/reports/shipment response: body: - string: '{"id": "shprep_8542118801fa46dea61818714951a7d3", "object": "ShipmentReport", - "created_at": "2023-05-16T22:18:19Z", "updated_at": "2023-05-16T22:18:19Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "new", "url": null, "url_expires_at": null, "include_children": false}' + string: '{"columns": null, "created_at": "2025-03-06T19:48:45Z", "end_date": + "2022-05-04", "id": "shprep_42c293b4b2234e9b8202d0ae9cd8eccc", "include_children": + null, "mode": "test", "object": "ShipmentReport", "start_date": "2022-05-04", + "status": "new", "updated_at": null, "url": null, "url_expires_at": null, + "utc_offset": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '283' + - '298' content-type: - application/json; charset=utf-8 - etag: - - W/"2919acd6f6211799d56e2d97eebb0824" expires: - '0' pragma: @@ -50,20 +49,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e06464012be78964bc00457b57 + - 8e8eb62c67c9fc1de2b97b970018ab72 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.046555' + - '0.083750' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -83,22 +82,21 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/reports/shprep_8542118801fa46dea61818714951a7d3 + uri: https://api.easypost.com/v2/reports/shprep_42c293b4b2234e9b8202d0ae9cd8eccc response: body: - string: '{"id": "shprep_8542118801fa46dea61818714951a7d3", "object": "ShipmentReport", - "created_at": "2023-05-16T22:18:19Z", "updated_at": "2023-05-16T22:18:19Z", - "start_date": "2022-05-04", "end_date": "2022-05-04", "mode": "test", "status": - "new", "url": null, "url_expires_at": null, "include_children": false}' + string: '{"columns": null, "created_at": "2025-03-06T19:48:45Z", "end_date": + "2022-05-04", "id": "shprep_42c293b4b2234e9b8202d0ae9cd8eccc", "include_children": + null, "mode": "test", "object": "ShipmentReport", "start_date": "2022-05-04", + "status": "new", "updated_at": null, "url": null, "url_expires_at": null, + "utc_offset": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '283' + - '298' content-type: - application/json; charset=utf-8 - etag: - - W/"2919acd6f6211799d56e2d97eebb0824" expires: - '0' pragma: @@ -116,20 +114,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e06464012be78964bc00457b63 + - 8e8eb62c67c9fc1de2b97b970018ab9e x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.033832' + - '0.043244' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_request_hooks.yaml b/tests/cassettes/test_request_hooks.yaml new file mode 100644 index 00000000..562c7bbb --- /dev/null +++ b/tests/cassettes/test_request_hooks.yaml @@ -0,0 +1,72 @@ +interactions: +- request: + body: '{"parcel": {"length": 10, "width": 8, "height": 4, "weight": 15.4}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '67' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/parcels + response: + body: + string: '{"id": "prcl_bbca99d01d1e4548be2a0fa01a62214f", "object": "Parcel", + "created_at": "2025-03-06T19:48:21Z", "updated_at": "2025-03-06T19:48:21Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '229' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/parcels/prcl_bbca99d01d1e4548be2a0fa01a62214f + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62867c9fc05e2b97b1300188f61 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb38nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.034714' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_response_hooks.yaml b/tests/cassettes/test_response_hooks.yaml new file mode 100644 index 00000000..285fcfdc --- /dev/null +++ b/tests/cassettes/test_response_hooks.yaml @@ -0,0 +1,72 @@ +interactions: +- request: + body: '{"parcel": {"length": 10, "width": 8, "height": 4, "weight": 15.4}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '67' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/parcels + response: + body: + string: '{"id": "prcl_eb400fa1cd2e4d8a8830068280c6e692", "object": "Parcel", + "created_at": "2025-03-06T19:48:21Z", "updated_at": "2025-03-06T19:48:21Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '229' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/parcels/prcl_eb400fa1cd2e4d8a8830068280c6e692 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62567c9fc05e2b97b1400188f8b + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb33nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.024215' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_retrieve_carrier_metadata.yaml b/tests/cassettes/test_retrieve_carrier_metadata.yaml index f2446902..e15503fa 100644 --- a/tests/cassettes/test_retrieve_carrier_metadata.yaml +++ b/tests/cassettes/test_retrieve_carrier_metadata.yaml @@ -16,53 +16,47 @@ interactions: uri: https://api.easypost.com/v2/metadata/carriers response: body: - string: '{"carriers": [{"human_readable": "Amazon MWS", "name": "amazonmws", - "predefined_packages": [], "service_levels": [{"carrier": "amazonmws", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "UPS Rates"}, {"carrier": "amazonmws", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USPS Rates"}, {"carrier": - "amazonmws", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "FedEx Rates"}, {"carrier": "amazonmws", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "UPS Labels"}, {"carrier": "amazonmws", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USPS Labels"}, {"carrier": - "amazonmws", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "FedEx Labels"}, {"carrier": "amazonmws", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "UPS Tracking"}, {"carrier": "amazonmws", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USPS Tracking"}, - {"carrier": "amazonmws", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FedEx Tracking"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "APC", "name": "apc", "predefined_packages": - [], "service_levels": [{"carrier": "apc", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "parcelConnectBookService"}, - {"carrier": "apc", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "parcelConnectExpeditedDDP"}, {"carrier": + string: '{"carriers": [{"human_readable": "Accurate", "name": "accurate", "predefined_packages": + [], "service_levels": [{"carrier": "accurate", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Route"}], "shipment_options": + [], "supported_features": []}, {"human_readable": "Amazon Shipping", "name": + "amazonshipping", "predefined_packages": [], "service_levels": [{"carrier": + "amazonshipping", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Amazon Shipping Ground"}], "shipment_options": + [], "supported_features": [{"carrier": "amazonshipping", "description": null, + "name": "labels", "supported": null}, {"carrier": "amazonshipping", "description": + null, "name": "rating", "supported": true}, {"carrier": "amazonshipping", + "description": null, "name": "refunds", "supported": null}]}, {"human_readable": + "APC", "name": "apc", "predefined_packages": [], "service_levels": [{"carrier": "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "parcelConnectExpeditedDDU"}, {"carrier": "apc", "description": + null, "name": "parcelConnectBookService"}, {"carrier": "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "parcelConnectPriorityDDP"}, {"carrier": "apc", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "parcelConnectPriorityDDPDelcon"}, + "parcelConnectExpeditedDDP"}, {"carrier": "apc", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "parcelConnectExpeditedDDU"}, {"carrier": "apc", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "parcelConnectPriorityDDU"}, {"carrier": + null, "max_weight": null, "name": "parcelConnectPriorityDDP"}, {"carrier": "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "parcelConnectPriorityDDUDelcon"}, {"carrier": "apc", "description": + null, "name": "parcelConnectPriorityDDPDelcon"}, {"carrier": "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "parcelConnectPriorityDDUPQW"}, {"carrier": "apc", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "parcelConnectStandardDDU"}, + "parcelConnectPriorityDDU"}, {"carrier": "apc", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "parcelConnectPriorityDDUDelcon"}, {"carrier": "apc", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "parcelConnectStandardDDUPQW"}, {"carrier": + null, "max_weight": null, "name": "parcelConnectPriorityDDUPQW"}, {"carrier": "apc", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "parcelConnectPacketDDU"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Asendia USA", "name": "asendiausa", "predefined_packages": - [], "service_levels": [{"carrier": "asendiausa", "description": null, "dimensions": - [], "human_readable": "ADS", "max_weight": null, "name": "ADS"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Air - Freight Inbound", "max_weight": null, "name": "AirFreightInbound"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Air - Freight Outbound", "max_weight": null, "name": "AirFreightOutbound"}, {"carrier": - "asendiausa", "description": null, "dimensions": [], "human_readable": "Asendia - Domestic Bound Printed Matter Expedited", "max_weight": null, "name": "AsendiaDomesticBoundPrinterMatterExpedited"}, + null, "name": "parcelConnectStandardDDU"}, {"carrier": "apc", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "parcelConnectStandardDDUPQW"}, {"carrier": "apc", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "parcelConnectPacketDDU"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "Asendia + USA", "name": "asendiausa", "predefined_packages": [], "service_levels": [{"carrier": + "asendiausa", "description": null, "dimensions": [], "human_readable": "ADS", + "max_weight": null, "name": "ADS"}, {"carrier": "asendiausa", "description": + null, "dimensions": [], "human_readable": "Air Freight Inbound", "max_weight": + null, "name": "AirFreightInbound"}, {"carrier": "asendiausa", "description": + null, "dimensions": [], "human_readable": "Air Freight Outbound", "max_weight": + null, "name": "AirFreightOutbound"}, {"carrier": "asendiausa", "description": + null, "dimensions": [], "human_readable": "Asendia Domestic Bound Printed + Matter Expedited", "max_weight": null, "name": "AsendiaDomesticBoundPrinterMatterExpedited"}, {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": "Asendia Domestic Bound Printed Matter Ground", "max_weight": null, "name": "AsendiaDomesticBoundPrinterMatterGround"}, {"carrier": "asendiausa", "description": @@ -232,7 +226,9 @@ interactions: "ePAQ Standard International Surface Air Lift", "max_weight": null, "name": "ePAQStandardISAL"}, {"carrier": "asendiausa", "description": null, "dimensions": [], "human_readable": "ePaq Select PMEI Non-Presort", "max_weight": null, - "name": "ePaqSelectPMEINonPresort"}], "shipment_options": [], "supported_features": + "name": "ePaqSelectPMEINonPresort"}, {"carrier": "asendiausa", "description": + null, "dimensions": [], "human_readable": "ePAQ Select DDP DG", "max_weight": + null, "name": "ePAQSelectDDPDG"}], "shipment_options": [], "supported_features": []}, {"human_readable": "Australia Post", "name": "australiapost", "predefined_packages": [{"carrier": "australiapost", "description": null, "dimensions": [], "human_readable": "Carton", "max_weight": null, "name": "CARTON"}, {"carrier": "australiapost", @@ -260,134 +256,261 @@ interactions: "description": "Specific service availability is determined by your AustraliaPost account.", "dimensions": [], "human_readable": "Commercial", "max_weight": null, "name": "Commercial"}], "shipment_options": [], "supported_features": - [{"carrier": "australiapost", "description": null, "name": "labels", "supported": - true}, {"carrier": "australiapost", "description": null, "name": "orders", - "supported": true}, {"carrier": "australiapost", "description": null, "name": - "pickups", "supported": false}, {"carrier": "australiapost", "description": - null, "name": "refunds", "supported": true}, {"carrier": "australiapost", - "description": "Domestic only.", "name": "returns", "supported": true}, {"carrier": - "australiapost", "description": null, "name": "scanforms", "supported": true}, - {"carrier": "australiapost", "description": null, "name": "rating", "supported": - false}, {"carrier": "australiapost", "description": null, "name": "tracking", + [{"carrier": "australiapost", "description": null, "name": "bill_on_delivery", "supported": false}, {"carrier": "australiapost", "description": "Not available with Print as You Go.", "name": "bill_on_label_purchase", "supported": true}, - {"carrier": "australiapost", "description": null, "name": "bill_on_delivery", - "supported": false}, {"carrier": "australiapost", "description": null, "name": - "bill_on_scan", "supported": false}, {"carrier": "australiapost", "description": - "Daily manifesting when using Print as You Go.", "name": "bill_on_manifest", - "supported": true}, {"carrier": "australiapost", "description": null, "name": - "commercial_invoices", "supported": null}, {"carrier": "australiapost", "description": - null, "name": "delivers_to_po_box", "supported": null}, {"carrier": "australiapost", - "description": null, "name": "sort_codes", "supported": false}, {"carrier": - "australiapost", "description": null, "name": "test_environment", "supported": - true}]}, {"human_readable": "AxlehireV3", "name": "axlehirev3", "predefined_packages": - [], "service_levels": [{"carrier": "axlehirev3", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "AxleHireDelivery"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "Better - Trucks", "name": "bettertrucks", "predefined_packages": [], "service_levels": - [{"carrier": "bettertrucks", "description": null, "dimensions": [], "human_readable": - "Next Day", "max_weight": null, "name": "NEXT_DAY"}, {"carrier": "bettertrucks", - "description": null, "dimensions": [], "human_readable": "Express", "max_weight": - null, "name": "EXPRESS"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "Canada Post", "name": "canadapost", "predefined_packages": - [], "service_levels": [{"carrier": "canadapost", "description": null, "dimensions": - [], "human_readable": "Delivered Tonight", "max_weight": null, "name": "DeliveredTonight"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Regular Parcel", "max_weight": null, "name": "RegularParcel"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Expedited + {"carrier": "australiapost", "description": "Daily manifesting when using + Print as You Go.", "name": "bill_on_manifest", "supported": true}, {"carrier": + "australiapost", "description": null, "name": "bill_on_scan", "supported": + false}, {"carrier": "australiapost", "description": null, "name": "commercial_invoices", + "supported": null}, {"carrier": "australiapost", "description": null, "name": + "delivers_to_po_box", "supported": null}, {"carrier": "australiapost", "description": + null, "name": "labels", "supported": true}, {"carrier": "australiapost", "description": + null, "name": "orders", "supported": true}, {"carrier": "australiapost", "description": + null, "name": "pickups", "supported": false}, {"carrier": "australiapost", + "description": null, "name": "rating", "supported": true}, {"carrier": "australiapost", + "description": null, "name": "refunds", "supported": true}, {"carrier": "australiapost", + "description": "Domestic only.", "name": "returns", "supported": true}, {"carrier": + "australiapost", "description": null, "name": "scanforms", "supported": true}, + {"carrier": "australiapost", "description": null, "name": "sort_codes", "supported": + false}, {"carrier": "australiapost", "description": null, "name": "test_environment", + "supported": true}]}, {"human_readable": "Better Trucks", "name": "bettertrucks", + "predefined_packages": [], "service_levels": [{"carrier": "bettertrucks", + "description": null, "dimensions": [], "human_readable": "Next Day", "max_weight": + null, "name": "NEXT_DAY"}, {"carrier": "bettertrucks", "description": null, + "dimensions": [], "human_readable": "Economy", "max_weight": null, "name": + "ECONOMY"}, {"carrier": "bettertrucks", "description": null, "dimensions": + [], "human_readable": "Same Day", "max_weight": null, "name": "SAME_DAY"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "Bluestreak", + "name": "bluestreak", "predefined_packages": [], "service_levels": [{"carrier": + "bluestreak", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "N5"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "Canada Post", "name": "canadapost", "predefined_packages": + [], "service_levels": [{"carrier": "canadapost", "description": "Up to 3 days + for local delivery, up to 6 days for regional delivery and up to 10 days for + national delivery", "dimensions": [], "human_readable": "Regular Parcel", + "max_weight": null, "name": "RegularParcel"}, {"carrier": "canadapost", "description": + "Up to 2 days for local delivery, up to 4 days for regional delivery and up + to 8 days for national delivery", "dimensions": [], "human_readable": "Expedited Parcel", "max_weight": null, "name": "ExpeditedParcel"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "Xpresspost", "max_weight": - null, "name": "Xpresspost"}, {"carrier": "canadapost", "description": null, - "dimensions": [], "human_readable": "Xpresspost Certified", "max_weight": - null, "name": "XpresspostCertified"}, {"carrier": "canadapost", "description": - null, "dimensions": [], "human_readable": "Priority", "max_weight": null, - "name": "Priority"}, {"carrier": "canadapost", "description": null, "dimensions": - [], "human_readable": "Library Books", "max_weight": null, "name": "LibraryBooks"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Expedited Parcel USA", "max_weight": null, "name": "ExpeditedParcelUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Envelope USA", "max_weight": null, "name": "PriorityWorldwideEnvelopeUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Pak USA", "max_weight": null, "name": "PriorityWorldwidePakUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Parcel USA", "max_weight": null, "name": "PriorityWorldwideParcelUSA"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Small Packet USA Air", "max_weight": null, "name": "SmallPacketUSAAir"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Tracked Packet USA", "max_weight": null, "name": "TrackedPacketUSA"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Tracked - Packet USA LVM", "max_weight": null, "name": "TrackedPacketUSALVM"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Xpresspost + "description": "Next-day and 2-day delivery", "dimensions": [], "human_readable": + "Xpresspost", "max_weight": null, "name": "Xpresspost"}, {"carrier": "canadapost", + "description": "Next-day delivery with signature", "dimensions": [], "human_readable": + "Priority", "max_weight": null, "name": "Priority"}, {"carrier": "canadapost", + "description": "Delivery in as little as 4 business days for larger parcels", + "dimensions": [], "human_readable": "Expedited Parcel USA", "max_weight": + null, "name": "ExpeditedParcelUSA"}, {"carrier": "canadapost", "description": + "Delivery in as little as 5 business days for small and lightweight items", + "dimensions": [], "human_readable": "Small Packet USA Air", "max_weight": + null, "name": "SmallPacketUSAAir"}, {"carrier": "canadapost", "description": + "Delivery in as little as 4 business days for small and lightweight items", + "dimensions": [], "human_readable": "Tracked Packet USA", "max_weight": null, + "name": "TrackedPacketUSA"}, {"carrier": "canadapost", "description": null, + "dimensions": [], "human_readable": "Tracked Packet USA LVM", "max_weight": + null, "name": "TrackedPacketUSALVM"}, {"carrier": "canadapost", "description": + "Delivery in 2 and 3 business days", "dimensions": [], "human_readable": "Xpresspost USA", "max_weight": null, "name": "XpresspostUSA"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "Xpresspost International", - "max_weight": null, "name": "XpresspostInternational"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "International Parcel - Air", "max_weight": null, "name": "InternationalParcelAir"}, {"carrier": "canadapost", - "description": null, "dimensions": [], "human_readable": "International Parcel - Surface", "max_weight": null, "name": "InternationalParcelSurface"}, {"carrier": - "canadapost", "description": null, "dimensions": [], "human_readable": "Priority - Worldwide Envelope Intl", "max_weight": null, "name": "PriorityWorldwideEnvelopeIntl"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Pak Intl", "max_weight": null, "name": "PriorityWorldwidePakIntl"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Priority Worldwide Parcel Intl", "max_weight": null, "name": "PriorityWorldwideParcelIntl"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Small Packet International Air", "max_weight": null, "name": "SmallPacketInternationalAir"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Small Packet International Surface", "max_weight": null, "name": "SmallPacketInternationalSurface"}, - {"carrier": "canadapost", "description": null, "dimensions": [], "human_readable": - "Tracked Packet International", "max_weight": null, "name": "TrackedPacketInternational"}], - "shipment_options": [], "supported_features": [{"carrier": "canadapost", "description": - null, "name": "labels", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "orders", "supported": false}, {"carrier": "canadapost", "description": - null, "name": "pickups", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "refunds", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "returns", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "scanforms", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "rating", "supported": false}, {"carrier": "canadapost", "description": - null, "name": "tracking", "supported": false}, {"carrier": "canadapost", "description": - null, "name": "bill_on_label_purchase", "supported": false}, {"carrier": "canadapost", - "description": null, "name": "bill_on_delivery", "supported": true}, {"carrier": - "canadapost", "description": null, "name": "bill_on_scan", "supported": false}, + "description": "Delivery in as little as 4 business days", "dimensions": [], + "human_readable": "Xpresspost International", "max_weight": null, "name": + "XpresspostInternational"}, {"carrier": "canadapost", "description": "Delivery + in as little as 6 business days for larger parcels", "dimensions": [], "human_readable": + "International Parcel Air", "max_weight": null, "name": "InternationalParcelAir"}, + {"carrier": "canadapost", "description": "Delivery in 1 month and up to 3 + months", "dimensions": [], "human_readable": "International Parcel Surface", + "max_weight": null, "name": "InternationalParcelSurface"}, {"carrier": "canadapost", + "description": "Delivery in as little as 6 business days for small and lightweight + items", "dimensions": [], "human_readable": "Small Packet International Air", + "max_weight": null, "name": "SmallPacketInternationalAir"}, {"carrier": "canadapost", + "description": "Delivery in 1 month and up to 3 months for small and lightweight + items", "dimensions": [], "human_readable": "Small Packet International Surface", + "max_weight": null, "name": "SmallPacketInternationalSurface"}, {"carrier": + "canadapost", "description": "Delivery in as little as 6 business days", "dimensions": + [], "human_readable": "Tracked Packet International", "max_weight": null, + "name": "TrackedPacketInternational"}, {"carrier": "canadapost", "description": + "Up to 3 days for local delivery, up to 6 days for regional delivery and up + to 10 days for national delivery", "dimensions": [], "human_readable": "Expedited + Parcel Plus", "max_weight": null, "name": "ExpeditedParcelPlus"}], "shipment_options": + [], "supported_features": [{"carrier": "canadapost", "description": null, + "name": "bill_on_delivery", "supported": true}, {"carrier": "canadapost", + "description": null, "name": "bill_on_label_purchase", "supported": false}, {"carrier": "canadapost", "description": null, "name": "bill_on_manifest", "supported": true}, {"carrier": "canadapost", "description": null, "name": - "commercial_invoices", "supported": true}, {"carrier": "canadapost", "description": - null, "name": "delivers_to_po_box", "supported": null}, {"carrier": "canadapost", - "description": null, "name": "sort_codes", "supported": false}, {"carrier": - "canadapost", "description": null, "name": "test_environment", "supported": - true}]}, {"human_readable": "Canpar", "name": "canpar", "predefined_packages": - [], "service_levels": [{"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Ground"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "SelectLetter"}, {"carrier": "canpar", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "SelectPak"}, + "bill_on_scan", "supported": false}, {"carrier": "canadapost", "description": + null, "name": "commercial_invoices", "supported": true}, {"carrier": "canadapost", + "description": null, "name": "delivers_to_po_box", "supported": null}, {"carrier": + "canadapost", "description": null, "name": "labels", "supported": true}, {"carrier": + "canadapost", "description": null, "name": "orders", "supported": false}, + {"carrier": "canadapost", "description": null, "name": "pickups", "supported": + true}, {"carrier": "canadapost", "description": null, "name": "rating", "supported": + true}, {"carrier": "canadapost", "description": null, "name": "refunds", "supported": + true}, {"carrier": "canadapost", "description": null, "name": "returns", "supported": + true}, {"carrier": "canadapost", "description": null, "name": "scanforms", + "supported": true}, {"carrier": "canadapost", "description": null, "name": + "sort_codes", "supported": false}, {"carrier": "canadapost", "description": + null, "name": "test_environment", "supported": true}]}, {"human_readable": + "Canpar", "name": "canpar", "predefined_packages": [], "service_levels": [{"carrier": + "canpar", "description": null, "dimensions": [], "human_readable": "Ground", + "max_weight": null, "name": "Ground"}, {"carrier": "canpar", "description": + null, "dimensions": [], "human_readable": "USA", "max_weight": null, "name": + "USA"}, {"carrier": "canpar", "description": null, "dimensions": [], "human_readable": + "Select Letter", "max_weight": null, "name": "SelectLetter"}, {"carrier": + "canpar", "description": null, "dimensions": [], "human_readable": "Select + Pak", "max_weight": null, "name": "SelectPak"}, {"carrier": "canpar", "description": + null, "dimensions": [], "human_readable": "Select", "max_weight": null, "name": + "Select"}, {"carrier": "canpar", "description": null, "dimensions": [], "human_readable": + "Overnight Letter", "max_weight": null, "name": "OvernightLetter"}, {"carrier": + "canpar", "description": null, "dimensions": [], "human_readable": "Overnight + Pak", "max_weight": null, "name": "OvernightPak"}, {"carrier": "canpar", "description": + null, "dimensions": [], "human_readable": "Overnight", "max_weight": null, + "name": "Overnight"}, {"carrier": "canpar", "description": null, "dimensions": + [], "human_readable": "USA Letter", "max_weight": null, "name": "USALetter"}, {"carrier": "canpar", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Select"}, {"carrier": "canpar", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "OvernightLetter"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "OvernightPak"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Overnight"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SelectUSA"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "USAPak"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "USALetter"}, {"carrier": - "canpar", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "USA"}, {"carrier": "canpar", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "International"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "CDL - Last Mile Solutions", "name": "cdllastmilesolutions", "predefined_packages": + "USA Pak", "max_weight": null, "name": "USAPak"}, {"carrier": "canpar", "description": + null, "dimensions": [], "human_readable": "Select USA", "max_weight": null, + "name": "SelectUSA"}, {"carrier": "canpar", "description": null, "dimensions": + [], "human_readable": "International", "max_weight": null, "name": "International"}], + "shipment_options": [{"carrier": "canpar", "deprecated": false, "description": + null, "human_readable": "Additional Handling", "name": "additional_handling", + "type": "boolean"}, {"carrier": "canpar", "deprecated": false, "description": + null, "human_readable": "Carrier Insurance Amount", "name": "carrier_insurance_amount", + "type": "float"}, {"carrier": "canpar", "deprecated": false, "description": + null, "human_readable": "Handling Instructions", "name": "handling_instructions", + "type": "string"}, {"carrier": "canpar", "deprecated": false, "description": + null, "human_readable": "Label Format", "name": "label_format", "type": "string"}, + {"carrier": "canpar", "deprecated": false, "description": null, "human_readable": + "Label Size", "name": "label_size", "type": "string"}, {"carrier": "canpar", + "deprecated": false, "description": null, "human_readable": "Delivery Confirmation", + "name": "delivery_confirmation", "type": "string"}, {"carrier": "canpar", + "deprecated": false, "description": null, "human_readable": "Cod Amount", + "name": "cod_amount", "type": "string"}, {"carrier": "canpar", "deprecated": + false, "description": null, "human_readable": "Cod Method", "name": "cod_method", + "type": "string"}, {"carrier": "canpar", "deprecated": true, "description": + null, "human_readable": "Date Advance", "name": "date_advance", "type": "integer"}, + {"carrier": "canpar", "deprecated": false, "description": null, "human_readable": + "Billing Ref", "name": "billing_ref", "type": "string"}], "supported_features": + [{"carrier": "canpar", "description": null, "name": "bill_on_delivery", "supported": + null}, {"carrier": "canpar", "description": null, "name": "bill_on_label_purchase", + "supported": null}, {"carrier": "canpar", "description": null, "name": "bill_on_manifest", + "supported": null}, {"carrier": "canpar", "description": null, "name": "bill_on_scan", + "supported": null}, {"carrier": "canpar", "description": null, "name": "commercial_invoices", + "supported": false}, {"carrier": "canpar", "description": null, "name": "delivers_to_po_box", + "supported": false}, {"carrier": "canpar", "description": null, "name": "labels", + "supported": true}, {"carrier": "canpar", "description": null, "name": "orders", + "supported": false}, {"carrier": "canpar", "description": null, "name": "pickups", + "supported": true}, {"carrier": "canpar", "description": null, "name": "rating", + "supported": true}, {"carrier": "canpar", "description": null, "name": "refunds", + "supported": true}, {"carrier": "canpar", "description": "Subject to regular + pricing.", "name": "returns", "supported": false}, {"carrier": "canpar", "description": + null, "name": "scanforms", "supported": true}, {"carrier": "canpar", "description": + null, "name": "sort_codes", "supported": false}, {"carrier": "canpar", "description": + null, "name": "test_environment", "supported": true}]}, {"human_readable": + "CDL Last Mile Solutions", "name": "cdllastmilesolutions", "predefined_packages": [], "service_levels": [{"carrier": "cdllastmilesolutions", "description": + null, "dimensions": [], "human_readable": "DISTRIBUTION", "max_weight": null, + "name": "DISTRIBUTION"}, {"carrier": "cdllastmilesolutions", "description": + null, "dimensions": [], "human_readable": "Same Day", "max_weight": null, + "name": "Same Day"}], "shipment_options": [{"carrier": "cdllastmilesolutions", + "deprecated": false, "description": null, "human_readable": "Delivery Max + Datetime", "name": "delivery_max_datetime", "type": "datetime"}, {"carrier": + "cdllastmilesolutions", "deprecated": false, "description": null, "human_readable": + "Delivery Min Datetime", "name": "delivery_min_datetime", "type": "datetime"}, + {"carrier": "cdllastmilesolutions", "deprecated": false, "description": null, + "human_readable": "Handling Instructions", "name": "handling_instructions", + "type": "string"}, {"carrier": "cdllastmilesolutions", "deprecated": false, + "description": null, "human_readable": "Invoice Number", "name": "invoice_number", + "type": "string"}, {"carrier": "cdllastmilesolutions", "deprecated": false, + "description": null, "human_readable": "Label Format", "name": "label_format", + "type": "string"}, {"carrier": "cdllastmilesolutions", "deprecated": false, + "description": null, "human_readable": "Pickup Max Datetime", "name": "pickup_max_datetime", + "type": "datetime"}, {"carrier": "cdllastmilesolutions", "deprecated": false, + "description": null, "human_readable": "Pickup Min Datetime", "name": "pickup_min_datetime", + "type": "datetime"}, {"carrier": "cdllastmilesolutions", "deprecated": true, + "description": null, "human_readable": "Print Custom 1", "name": "print_custom_1", + "type": "string"}, {"carrier": "cdllastmilesolutions", "deprecated": true, + "description": null, "human_readable": "Print Custom 1 Barcode", "name": "print_custom_1_barcode", + "type": "boolean"}, {"carrier": "cdllastmilesolutions", "deprecated": true, + "description": null, "human_readable": "Print Custom 2", "name": "print_custom_2", + "type": "string"}, {"carrier": "cdllastmilesolutions", "deprecated": true, + "description": null, "human_readable": "Print Custom 2 Barcode", "name": "print_custom_2_barcode", + "type": "boolean"}], "supported_features": [{"carrier": "cdllastmilesolutions", + "description": null, "name": "bill_on_delivery", "supported": null}, {"carrier": + "cdllastmilesolutions", "description": null, "name": "bill_on_label_purchase", + "supported": null}, {"carrier": "cdllastmilesolutions", "description": null, + "name": "bill_on_manifest", "supported": null}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "bill_on_scan", "supported": null}, {"carrier": + "cdllastmilesolutions", "description": null, "name": "commercial_invoices", + "supported": false}, {"carrier": "cdllastmilesolutions", "description": null, + "name": "delivers_to_po_box", "supported": null}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "labels", "supported": true}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "orders", "supported": false}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "pickups", "supported": true}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "rating", "supported": true}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "refunds", "supported": false}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "returns", "supported": false}, {"carrier": "cdllastmilesolutions", + "description": null, "name": "scanforms", "supported": false}, {"carrier": + "cdllastmilesolutions", "description": null, "name": "sort_codes", "supported": + true}, {"carrier": "cdllastmilesolutions", "description": null, "name": "test_environment", + "supported": null}]}, {"human_readable": "Chronopost", "name": "chronopost", + "predefined_packages": [], "service_levels": [], "shipment_options": [], "supported_features": + []}, {"human_readable": "Cirro E-Commerce", "name": "cirroecommerce", "predefined_packages": + [], "service_levels": [{"carrier": "cirroecommerce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "CADOECOEA + (Canada Domestic Economy East)"}, {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DISTRIBUTION"}, {"carrier": "cdllastmilesolutions", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Same - Day"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "Chronopost", "name": "chronopost", "predefined_packages": [], "service_levels": - [], "shipment_options": [], "supported_features": []}, {"human_readable": - "CloudSort", "name": "cloudsort", "predefined_packages": [], "service_levels": - [], "shipment_options": [], "supported_features": []}, {"human_readable": - "Courier Express", "name": "courierexpress", "predefined_packages": [], "service_levels": - [{"carrier": "courierexpress", "description": null, "dimensions": [], "human_readable": + "CADOECOWE (Canada Domestic Economy West)"}, {"carrier": "cirroecommerce", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "CAECONE (USA to Canada Economy Northeast)"}, {"carrier": "cirroecommerce", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "CAECOWE (USA to Canada Economy West)"}, {"carrier": "cirroecommerce", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "ECOCE (Economy Central)"}, {"carrier": "cirroecommerce", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "ECOEA (Economy East)"}, {"carrier": "cirroecommerce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "ECONE + (Economy Northeast)"}, {"carrier": "cirroecommerce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "ECOSO + (Economy South)"}, {"carrier": "cirroecommerce", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "ECOWE (Economy West)"}, + {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "EUECONE (USA to EU Economy Northeast)"}, + {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "EXPNE (Expedited Northeast)"}, {"carrier": + "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "EXPWE (Expedited West)"}, {"carrier": "cirroecommerce", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "REGCE (Regional Central)"}, {"carrier": "cirroecommerce", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "REGEA (Regional East)"}, {"carrier": "cirroecommerce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "REGNE + (Regional Northeast)"}, {"carrier": "cirroecommerce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "REGSO + (Regional South)"}, {"carrier": "cirroecommerce", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "REGWE (Regional West)"}, + {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDWE (Standard West LA)"}, {"carrier": + "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDSL (Standard SL Salt Lake City)"}, {"carrier": + "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDCE (Standard Central ORD/Chicago)"}, + {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDNJ (Standard NJ New Jersey)"}, {"carrier": + "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDNE (Standard Northeast New York/JFK)"}, + {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDEA (Standard East ATL)"}, {"carrier": + "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDSE (Standard Southeast Miami)"}, {"carrier": + "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDSO (Standard South DFW/Dallas)"}, {"carrier": + "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "USECOCA (Canada to USA Economy East)"}, + {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "GBECONE (USA to UK Economy Northeast)"}, + {"carrier": "cirroecommerce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "EXPNJ (Expedited New Jersey)"}], "shipment_options": + [], "supported_features": []}, {"human_readable": "Courier Express", "name": + "courierexpress", "predefined_packages": [], "service_levels": [{"carrier": + "courierexpress", "description": null, "dimensions": [], "human_readable": "Basic Parcel", "max_weight": null, "name": "BASIC_PARCEL"}], "shipment_options": [], "supported_features": []}, {"human_readable": "Couriers Please", "name": "couriersplease", "predefined_packages": [], "service_levels": [{"carrier": @@ -478,8 +601,6 @@ interactions: "couriersplease", "description": null, "dimensions": [], "human_readable": "500 Gram Parcel Authority To Leave", "max_weight": null, "name": "500GramParcelATL"}, {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "1 Kilogram Parcel", "max_weight": null, "name": "1KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": "10 Kilogram Parcel", "max_weight": null, "name": "10KgParcel"}, {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": "10 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "10KgParcelATL"}, @@ -498,12 +619,8 @@ interactions: {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": "2 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "2KgParcelATL"}, {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "3 Kilogram Parcel", "max_weight": null, "name": "3KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": "3 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "3KgParcelATL"}, {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": - "5 Kilogram Parcel", "max_weight": null, "name": "5KgParcel"}, {"carrier": - "couriersplease", "description": null, "dimensions": [], "human_readable": "5 Kilogram Parcel Authority To Leave", "max_weight": null, "name": "5Kg Parcel ATL"}, {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": "Australian City Express Signature", "max_weight": null, @@ -546,14 +663,27 @@ interactions: "International Express", "max_weight": null, "name": "InternationalExpress"}, {"carrier": "couriersplease", "description": null, "dimensions": [], "human_readable": "500gm Parcel", "max_weight": null, "name": "500gmParcel"}, {"carrier": "couriersplease", - "description": null, "dimensions": [], "human_readable": "1 Kilogram Parcel", - "max_weight": null, "name": "1kgParcel"}, {"carrier": "couriersplease", "description": - null, "dimensions": [], "human_readable": "3 Kilogram Parcel", "max_weight": - null, "name": "3kgParcel"}, {"carrier": "couriersplease", "description": null, - "dimensions": [], "human_readable": "5 Kilogram Parcel", "max_weight": null, - "name": "5kgParcel"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "DAI Post", "name": "daipost", "predefined_packages": [], - "service_levels": [{"carrier": "daipost", "description": null, "dimensions": + "description": null, "dimensions": [], "human_readable": "1kg Parcel", "max_weight": + null, "name": "1KgParcel"}, {"carrier": "couriersplease", "description": null, + "dimensions": [], "human_readable": "3kg Parcel", "max_weight": null, "name": + "3KgParcel"}, {"carrier": "couriersplease", "description": null, "dimensions": + [], "human_readable": "5kg Parcel", "max_weight": null, "name": "5KgParcel"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "CSLogistics", + "name": "cslogistics", "predefined_packages": [], "service_levels": [{"carrier": + "cslogistics", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "Distribution"}, {"carrier": "cslogistics", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "ASAP"}, {"carrier": "cslogistics", "description": null, "dimensions": [], + "human_readable": null, "max_weight": null, "name": "Freight Priority"}, {"carrier": + "cslogistics", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "Freight Regular"}, {"carrier": "cslogistics", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "Priority"}, {"carrier": "cslogistics", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "Regular"}, + {"carrier": "cslogistics", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Scheduled"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "DAI Post", "name": "daipost", "predefined_packages": + [], "service_levels": [{"carrier": "daipost", "description": null, "dimensions": [], "human_readable": "Parcel Epacket", "max_weight": null, "name": "ParcelMax"}, {"carrier": "daipost", "description": null, "dimensions": [], "human_readable": "International Economy", "max_weight": null, "name": "InternationalEconomy"}, @@ -562,64 +692,137 @@ interactions: {"carrier": "daipost", "description": null, "dimensions": [], "human_readable": "International Express", "max_weight": null, "name": "InternationalExpress"}, {"carrier": "daipost", "description": null, "dimensions": [], "human_readable": - "Domestic Tracked", "max_weight": null, "name": "DomesticTracked"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DeliverIt", "name": "deliverit", + "Domestic Tracked", "max_weight": null, "name": "DomesticTracked"}, {"carrier": + "daipost", "description": null, "dimensions": [], "human_readable": "Parcel + Right", "max_weight": null, "name": "ParcelRight"}], "shipment_options": [], + "supported_features": []}, {"human_readable": "Deliver-It", "name": "deliverit", "predefined_packages": [], "service_levels": [{"carrier": "deliverit", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Afternoon"}, {"carrier": "deliverit", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Early-It"}, {"carrier": + "Saturday"}, {"carrier": "deliverit", "description": null, "dimensions": [], + "human_readable": null, "max_weight": null, "name": "Economy"}, {"carrier": "deliverit", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Economy"}, {"carrier": "deliverit", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Noon-It"}, {"carrier": "deliverit", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Saturday"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Deutsche Post", "name": - "deutschepost", "predefined_packages": [], "service_levels": [{"carrier": - "deutschepost", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "PacketPlus"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Deutsche Post UK", "name": "deutschepostuk", "predefined_packages": - [], "service_levels": [{"carrier": "deutschepostuk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "PriorityPacketPlus"}, - {"carrier": "deutschepostuk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PriorityPacket"}, {"carrier": "deutschepostuk", + "max_weight": null, "name": "Noon-It"}, {"carrier": "deliverit", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "Early-It"}, {"carrier": "deliverit", "description": null, "dimensions": [], + "human_readable": null, "max_weight": null, "name": "Afternoon"}], "shipment_options": + [], "supported_features": [{"carrier": "deliverit", "description": null, "name": + "bill_on_delivery", "supported": true}, {"carrier": "deliverit", "description": + null, "name": "bill_on_label_purchase", "supported": false}, {"carrier": "deliverit", + "description": null, "name": "bill_on_manifest", "supported": false}, {"carrier": + "deliverit", "description": null, "name": "bill_on_scan", "supported": false}, + {"carrier": "deliverit", "description": null, "name": "commercial_invoices", + "supported": false}, {"carrier": "deliverit", "description": null, "name": + "labels", "supported": true}, {"carrier": "deliverit", "description": null, + "name": "orders", "supported": false}, {"carrier": "deliverit", "description": + null, "name": "pickups", "supported": false}, {"carrier": "deliverit", "description": + null, "name": "rating", "supported": true}, {"carrier": "deliverit", "description": + null, "name": "refunds", "supported": true}, {"carrier": "deliverit", "description": + null, "name": "returns", "supported": false}, {"carrier": "deliverit", "description": + null, "name": "scanforms", "supported": false}, {"carrier": "deliverit", "description": + null, "name": "sort_codes", "supported": false}, {"carrier": "deliverit", + "description": null, "name": "test_environment", "supported": false}]}, {"human_readable": + "Deutsche Post", "name": "deutschepost", "predefined_packages": [], "service_levels": + [{"carrier": "deutschepost", "description": null, "dimensions": [], "human_readable": + "Packet Plus", "max_weight": null, "name": "PacketPlus"}], "shipment_options": + [{"carrier": "deutschepost", "deprecated": false, "description": null, "human_readable": + "Additional Handling", "name": "additional_handling", "type": "boolean"}, + {"carrier": "deutschepost", "deprecated": true, "description": null, "human_readable": + "Bill Third Party Account", "name": "bill_third_party_account", "type": "string"}, + {"carrier": "deutschepost", "deprecated": false, "description": null, "human_readable": + "Carrier Insurance Amount", "name": "carrier_insurance_amount", "type": "float"}, + {"carrier": "deutschepost", "deprecated": false, "description": null, "human_readable": + "Cod Amount", "name": "cod_amount", "type": "string"}, {"carrier": "deutschepost", + "deprecated": false, "description": null, "human_readable": "Cod Method", + "name": "cod_method", "type": "string"}, {"carrier": "deutschepost", "deprecated": + false, "description": null, "human_readable": "Cost Center", "name": "cost_center", + "type": "string"}, {"carrier": "deutschepost", "deprecated": true, "description": + null, "human_readable": "Delivered Duty Paid", "name": "delivered_duty_paid", + "type": "boolean"}, {"carrier": "deutschepost", "deprecated": false, "description": + null, "human_readable": "Delivery Confirmation", "name": "delivery_confirmation", + "type": "string"}, {"carrier": "deutschepost", "deprecated": false, "description": + null, "human_readable": "Handling Instructions", "name": "handling_instructions", + "type": "string"}, {"carrier": "deutschepost", "deprecated": false, "description": + null, "human_readable": "Invoice Number", "name": "invoice_number", "type": + "string"}, {"carrier": "deutschepost", "deprecated": false, "description": + null, "human_readable": "Label Date", "name": "label_date", "type": "datetime"}, + {"carrier": "deutschepost", "deprecated": false, "description": null, "human_readable": + "Label Format", "name": "label_format", "type": "string"}, {"carrier": "deutschepost", + "deprecated": false, "description": null, "human_readable": "Label Size", + "name": "label_size", "type": "string"}, {"carrier": "deutschepost", "deprecated": + true, "description": null, "human_readable": "Print Custom 1", "name": "print_custom_1", + "type": "string"}, {"carrier": "deutschepost", "deprecated": true, "description": + null, "human_readable": "Print Custom 2", "name": "print_custom_2", "type": + "string"}, {"carrier": "deutschepost", "deprecated": false, "description": + null, "human_readable": "Return Service", "name": "return_service", "type": + "string"}], "supported_features": [{"carrier": "deutschepost", "description": + null, "name": "bill_on_delivery", "supported": null}, {"carrier": "deutschepost", + "description": null, "name": "bill_on_label_purchase", "supported": null}, + {"carrier": "deutschepost", "description": null, "name": "bill_on_manifest", + "supported": null}, {"carrier": "deutschepost", "description": null, "name": + "bill_on_scan", "supported": null}, {"carrier": "deutschepost", "description": + null, "name": "commercial_invoices", "supported": false}, {"carrier": "deutschepost", + "description": null, "name": "delivers_to_po_box", "supported": false}, {"carrier": + "deutschepost", "description": null, "name": "labels", "supported": true}, + {"carrier": "deutschepost", "description": null, "name": "orders", "supported": + false}, {"carrier": "deutschepost", "description": null, "name": "pickups", + "supported": false}, {"carrier": "deutschepost", "description": null, "name": + "rating", "supported": true}, {"carrier": "deutschepost", "description": null, + "name": "refunds", "supported": false}, {"carrier": "deutschepost", "description": + null, "name": "returns", "supported": true}, {"carrier": "deutschepost", "description": + null, "name": "scanforms", "supported": false}, {"carrier": "deutschepost", + "description": null, "name": "sort_codes", "supported": false}, {"carrier": + "deutschepost", "description": null, "name": "test_environment", "supported": + false}]}, {"human_readable": "Deutsche Post UK", "name": "deutschepostuk", + "predefined_packages": [], "service_levels": [{"carrier": "deutschepostuk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PriorityPacketTracked"}, {"carrier": "deutschepostuk", "description": + null, "name": "PriorityPacketPlus"}, {"carrier": "deutschepostuk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "BusinessMailRegistered"}, {"carrier": "deutschepostuk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "StandardPacket"}, + "PriorityPacket"}, {"carrier": "deutschepostuk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "PriorityPacketTracked"}, {"carrier": "deutschepostuk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "BusinessMailStandard"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DHL eCommerce Asia", "name": - "dhlecommerceasia", "predefined_packages": [], "service_levels": [{"carrier": - "dhlecommerceasia", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Packet"}, {"carrier": "dhlecommerceasia", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PacketPlus"}, {"carrier": "dhlecommerceasia", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ParcelDirect"}, {"carrier": "dhlecommerceasia", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelDirectExpedited"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "DHL - eCommerce Solutions", "name": "dhlecommercesolutions", "predefined_packages": - [], "service_levels": [{"carrier": "dhlecommercesolutions", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DHLParcelExpedited"}, {"carrier": "dhlecommercesolutions", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DHLParcelExpeditedMax"}, {"carrier": "dhlecommercesolutions", "description": + null, "max_weight": null, "name": "BusinessMailRegistered"}, {"carrier": "deutschepostuk", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "StandardPacket"}, {"carrier": "deutschepostuk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DHLParcelGround"}, {"carrier": "dhlecommercesolutions", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "DHLBPMExpedited"}, - {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "DHLBPMGround"}, {"carrier": - "dhlecommercesolutions", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DHLParcelInternationalDirect"}, {"carrier": + "BusinessMailStandard"}], "shipment_options": [], "supported_features": []}, + {"human_readable": "DHL eCommerce", "name": "dhlecommercesolutions", "predefined_packages": + [], "service_levels": [{"carrier": "dhlecommercesolutions", "description": + null, "dimensions": [], "human_readable": "DHL SM Parcel Expedited", "max_weight": + null, "name": "DHLParcelExpedited"}, {"carrier": "dhlecommercesolutions", + "description": null, "dimensions": [], "human_readable": "DHL SM Parcel Expedited + Max", "max_weight": null, "name": "DHLParcelExpeditedMax"}, {"carrier": "dhlecommercesolutions", + "description": null, "dimensions": [], "human_readable": "DHL SM Parcel Ground", + "max_weight": null, "name": "DHLParcelGround"}, {"carrier": "dhlecommercesolutions", + "description": null, "dimensions": [], "human_readable": "DHL Parcel International + Direct", "max_weight": null, "name": "DHLParcelInternationalDirect"}, {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DHLParcelInternationalStandard"}, {"carrier": + "DHL Parcel International Standard", "max_weight": null, "name": "DHLParcelInternationalStandard"}, + {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], + "human_readable": "DHL Packet International", "max_weight": null, "name": + "DHLPacketInternational"}, {"carrier": "dhlecommercesolutions", "description": + null, "dimensions": [], "human_readable": "DHL Parcel International Direct + Priority", "max_weight": null, "name": "DHLParcelInternationalDirectPriority"}, + {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], + "human_readable": "DHL Parcel International Direct Standard", "max_weight": + null, "name": "DHLParcelInternationalDirectStandard"}, {"carrier": "dhlecommercesolutions", + "description": null, "dimensions": [], "human_readable": "DHL Parcel International + Direct SMB", "max_weight": null, "name": "DHLParcelInternationalDirectSMB"}, + {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], + "human_readable": "DHL Parcel International Standard SMB", "max_weight": null, + "name": "DHLParcelInternationalStandardSMB"}, {"carrier": "dhlecommercesolutions", + "description": null, "dimensions": [], "human_readable": "DHL SM Bound Printed + Matter Expedited", "max_weight": null, "name": "DHLBPMExpedited"}, {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DHLPacketInternational"}, {"carrier": "dhlecommercesolutions", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DHLParcelInternationalDirectPriority"}, {"carrier": "dhlecommercesolutions", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DHLParcelInternationalDirectStandard"}], "shipment_options": + "DHL SM Bound Printed Matter Ground", "max_weight": null, "name": "DHLBPMGround"}, + {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], + "human_readable": "DHL Packet IPA", "max_weight": null, "name": "DHLPacketIPA"}, + {"carrier": "dhlecommercesolutions", "description": null, "dimensions": [], + "human_readable": "DHL SM Parcel Return Ground", "max_weight": null, "name": + "DHLSmartMailParcelReturnGround"}, {"carrier": "dhlecommercesolutions", "description": + null, "dimensions": [], "human_readable": "DHL SM Parcel Return Plus", "max_weight": + null, "name": "DHLSmartMailParcelReturnPlus"}, {"carrier": "dhlecommercesolutions", + "description": null, "dimensions": [], "human_readable": "DHL SM Parcel Return + Light", "max_weight": null, "name": "DHLSmartMailParcelReturnLight"}], "shipment_options": [], "supported_features": []}, {"human_readable": "DHL Express", "name": "dhlexpress", "predefined_packages": [{"carrier": "dhlexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "JumboDocument"}, @@ -710,104 +913,137 @@ interactions: null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "PaketInternational"}, {"carrier": "dhlpaket", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "Retoure"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "DHL SmartMail", "name": - "dhlsmartmail", "predefined_packages": [], "service_levels": [], "shipment_options": - [], "supported_features": []}, {"human_readable": "DPD", "name": "dpd", "predefined_packages": - [], "service_levels": [{"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPDCLASSIC"}, {"carrier": - "dpd", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPD8:30"}, {"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPD10:00"}, {"carrier": - "dpd", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPD12:00"}, {"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPD18:00"}, {"carrier": - "dpd", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPDEXPRESS"}, {"carrier": "dpd", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DPDPARCELLETTER"}, - {"carrier": "dpd", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DPDPARCELLETTERPLUS"}, {"carrier": "dpd", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "DPDINTERNATIONALMAIL"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "DPDUK", "name": "dpduk", "predefined_packages": [{"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Parcel"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Pallet"}, {"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressPak"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FreightParcel"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Freight"}], "service_levels": [{"carrier": + [], "supported_features": []}, {"human_readable": "DoorDash", "name": "doordash", + "predefined_packages": [], "service_levels": [{"carrier": "doordash", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "Standard"}], "shipment_options": [], "supported_features": [{"carrier": "doordash", + "description": null, "name": "labels", "supported": null}, {"carrier": "doordash", + "description": null, "name": "rating", "supported": true}, {"carrier": "doordash", + "description": null, "name": "refunds", "supported": null}]}, {"human_readable": + "Douglas", "name": "douglas", "predefined_packages": [], "service_levels": + [{"carrier": "douglas", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Next Day"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "DPD", "name": "dpd", "predefined_packages": [], "service_levels": + [{"carrier": "dpd", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "DPDCLASSIC"}, {"carrier": "dpd", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "DPD8:30"}, {"carrier": "dpd", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "DPD10:00"}, {"carrier": "dpd", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "DPD12:00"}, {"carrier": "dpd", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "DPD18:00"}, {"carrier": "dpd", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "DPDEXPRESS"}, {"carrier": "dpd", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "DPDPARCELLETTER"}, {"carrier": "dpd", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "DPDPARCELLETTERPLUS"}, {"carrier": "dpd", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "DPDINTERNATIONALMAIL"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "DPD + NL", "name": "dpdnl", "predefined_packages": [], "service_levels": [{"carrier": + "dpdnl", "description": null, "dimensions": [], "human_readable": "DPDNL Classic", + "max_weight": null, "name": "DPDNL_CLASSIC"}, {"carrier": "dpdnl", "description": + null, "dimensions": [], "human_readable": "Express 10", "max_weight": null, + "name": "EXPRESS_10"}, {"carrier": "dpdnl", "description": null, "dimensions": + [], "human_readable": "Express 12", "max_weight": null, "name": "EXPRESS_12"}, + {"carrier": "dpdnl", "description": null, "dimensions": [], "human_readable": + "Express 18", "max_weight": null, "name": "EXPRESS_18"}, {"carrier": "dpdnl", + "description": null, "dimensions": [], "human_readable": "International Express", + "max_weight": null, "name": "INTERNATIONAL_EXPRESS"}, {"carrier": "dpdnl", + "description": null, "dimensions": [], "human_readable": "DPDNL B2C Home", + "max_weight": null, "name": "DPDNL_HOME"}, {"carrier": "dpdnl", "description": + null, "dimensions": [], "human_readable": "DPDNL B2C Shop", "max_weight": + null, "name": "DPDNL_TO_SHOP"}], "shipment_options": [], "supported_features": + [{"carrier": "dpdnl", "description": null, "name": "commercial_invoices", + "supported": false}, {"carrier": "dpdnl", "description": null, "name": "labels", + "supported": true}, {"carrier": "dpdnl", "description": null, "name": "orders", + "supported": false}, {"carrier": "dpdnl", "description": null, "name": "pickups", + "supported": false}, {"carrier": "dpdnl", "description": null, "name": "rating", + "supported": true}, {"carrier": "dpdnl", "description": null, "name": "refunds", + "supported": true}, {"carrier": "dpdnl", "description": null, "name": "returns", + "supported": false}, {"carrier": "dpdnl", "description": null, "name": "scanforms", + "supported": false}, {"carrier": "dpdnl", "description": null, "name": "sort_codes", + "supported": false}, {"carrier": "dpdnl", "description": null, "name": "test_environment", + "supported": true}]}, {"human_readable": "DPD UK", "name": "dpduk", "predefined_packages": + [{"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Parcel"}, {"carrier": "dpduk", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "Pallet"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "ExpressPak"}, {"carrier": "dpduk", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "FreightParcel"}, {"carrier": "dpduk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Freight"}], "service_levels": + [{"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "AirClassicInternationalAir"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "AirExpressInternationalAir"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "AirClassicInternationalAir"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelSunday"}, {"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelSunday"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PalletSunday"}, {"carrier": "dpduk", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "PalletDpdClassic"}, {"carrier": - "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpresspakDpdClassic"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpresspakSunday"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelDpdClassic"}, + "ExpresspakDpd10:30"}, {"carrier": "dpduk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "ExpresspakDpd12:00"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelDpdTwoDay"}, {"carrier": "dpduk", + null, "max_weight": null, "name": "ExpresspakDpdClassic"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ParcelDpdNextDay"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ParcelDpd12"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelDpd10"}, {"carrier": "dpduk", "description": + null, "name": "ExpresspakDpdNextDay"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ParcelReturnToShop"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ParcelSaturday"}, - {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelSaturday12"}, {"carrier": "dpduk", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ParcelSaturday10"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ParcelSunday12"}, + "ExpresspakSaturday"}, {"carrier": "dpduk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "ExpresspakSaturday10:30"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FreightParcelDpdClassic"}, {"carrier": + null, "max_weight": null, "name": "ExpresspakSaturday12:00"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelSunday12"}, {"carrier": "dpduk", "description": + null, "name": "ExpresspakSunday"}, {"carrier": "dpduk", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "ExpresspakSunday12:00"}, + {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "FreightParcelDpd10:30"}, {"carrier": "dpduk", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "FreightParcelDpd12:00"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpresspakDpdNextDay"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ExpresspakDpd12"}, + "FreightParcelDpdClassic"}, {"carrier": "dpduk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "FreightParcelDpdNextDay"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpresspakDpd10"}, {"carrier": "dpduk", + null, "max_weight": null, "name": "FreightParcelDpdTwoDay"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpresspakSaturday"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ExpresspakSaturday12"}, + null, "name": "FreightParcelSaturday"}, {"carrier": "dpduk", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "FreightParcelSaturday10:30"}, {"carrier": "dpduk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "FreightParcelSaturday12:00"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpresspakSaturday10"}, {"carrier": "dpduk", + null, "max_weight": null, "name": "FreightParcelSunday"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpresspakSunday12"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "PalletSunday12"}, + null, "name": "FreightParcelSunday12:00"}, {"carrier": "dpduk", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "PalletDpd10:30"}, {"carrier": "dpduk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "PalletDpd12:00"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PalletDpdTwoDay"}, {"carrier": "dpduk", + null, "max_weight": null, "name": "PalletDpdClassic"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "PalletDpdNextDay"}, {"carrier": "dpduk", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "PalletDpd12"}, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "PalletDpdTwoDay"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PalletDpd10"}, {"carrier": "dpduk", "description": + null, "max_weight": null, "name": "PalletSaturday"}, {"carrier": "dpduk", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "PalletSaturday10:30"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PalletSaturday"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "PalletSaturday12"}, + "PalletSaturday12:00"}, {"carrier": "dpduk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "PalletSunday"}, {"carrier": + "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "PalletSunday12:00"}, {"carrier": "dpduk", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "ParcelDpd10:30"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PalletSaturday10"}, {"carrier": "dpduk", + null, "max_weight": null, "name": "ParcelDpd12:00"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelDpdTwoDay"}, {"carrier": "dpduk", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FreightParcelDpdNextDay"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FreightParcelDpd12"}, + null, "name": "ParcelDpdClassic"}, {"carrier": "dpduk", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "ParcelDpdNextDay"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "FreightParcelDpd10"}, {"carrier": "dpduk", + null, "max_weight": null, "name": "ParcelDpdTwoDay"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcelSaturday"}, {"carrier": "dpduk", "description": + null, "name": "ParcelReturnToShop"}, {"carrier": "dpduk", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "ParcelSaturday"}, + {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "ParcelSaturday10:30"}, {"carrier": "dpduk", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "ParcelSaturday12:00"}, {"carrier": "dpduk", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FreightParcelSaturday12"}, {"carrier": "dpduk", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "FreightParcelSaturday10"}], + "ParcelSunday"}, {"carrier": "dpduk", "description": null, "dimensions": [], + "human_readable": null, "max_weight": null, "name": "ParcelSunday12:00"}], "shipment_options": [], "supported_features": []}, {"human_readable": "ePostGlobal", "name": "epostglobal", "predefined_packages": [], "service_levels": [{"carrier": "epostglobal", "description": null, "dimensions": [], "human_readable": null, @@ -839,75 +1075,143 @@ interactions: "PriorityParcelDeliveryConfirmationDDU"}, {"carrier": "epostglobal", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "ePacketService"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "Estafeta", "name": "estafeta", "predefined_packages": [{"carrier": "estafeta", + "EPostGlobalV2", "name": "epostglobalv2", "predefined_packages": [], "service_levels": + [{"carrier": "epostglobalv2", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "CourierService"}, {"carrier": "epostglobalv2", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "CourierServiceDutiesPaid"}, {"carrier": "epostglobalv2", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "DomesticPriorityParcel"}, {"carrier": "epostglobalv2", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "DomesticeDGE"}, + {"carrier": "epostglobalv2", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "EconomyParcel"}, {"carrier": "epostglobalv2", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "ExpeditedParcelWithDeliveryConfirmationDutiesPaid"}, {"carrier": + "epostglobalv2", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "ExpeditedWithDC"}, {"carrier": "epostglobalv2", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "FirstClassParcelsInternational"}, {"carrier": "epostglobalv2", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ENVELOPE"}, {"carrier": "estafeta", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "PARCEL"}], "service_levels": - [{"carrier": "estafeta", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "NextDayBy930"}, {"carrier": "estafeta", + null, "name": "IPA"}, {"carrier": "epostglobalv2", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "ISAL"}, {"carrier": + "epostglobalv2", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "PMEI"}, {"carrier": "epostglobalv2", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "PMEIDDP"}, {"carrier": "epostglobalv2", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "PMIPresortService"}, + {"carrier": "epostglobalv2", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "PMIServiceDutyPaid"}, {"carrier": "epostglobalv2", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "NextDayBy1130"}, {"carrier": "estafeta", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "NextDay"}, - {"carrier": "estafeta", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Ground"}, {"carrier": "estafeta", "description": + null, "name": "PriorityPacketDDU"}, {"carrier": "epostglobalv2", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "TwoDay"}, {"carrier": "estafeta", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "LTL"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Evri", "name": "evri", - "predefined_packages": [], "service_levels": [{"carrier": "evri", "description": + "PriorityParcelNoDeliveryConfirmation"}, {"carrier": "epostglobalv2", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Courier2Home"}, {"carrier": "evri", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Courier2HomeNextDay"}, + "PriorityParcelNoDeliveryConfirmationDutiesPaid"}, {"carrier": "epostglobalv2", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "PriorityParcelWithDeliveryConfirmation"}, {"carrier": "epostglobalv2", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "PriorityParcelWithDeliveryConfirmationDutiesPaid"}, {"carrier": + "epostglobalv2", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "ePacket"}, {"carrier": "epostglobalv2", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "ePacketDDP"}], "shipment_options": [], "supported_features": + [{"carrier": "epostglobalv2", "description": null, "name": "labels", "supported": + null}, {"carrier": "epostglobalv2", "description": null, "name": "rating", + "supported": true}, {"carrier": "epostglobalv2", "description": null, "name": + "refunds", "supported": null}]}, {"human_readable": "Estafeta", "name": "estafeta", + "predefined_packages": [{"carrier": "estafeta", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "ENVELOPE"}, {"carrier": + "estafeta", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "PARCEL"}], "service_levels": [{"carrier": "estafeta", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "11:30"}, {"carrier": "estafeta", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "12:30"}, {"carrier": + "estafeta", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "Dia Sig."}, {"carrier": "estafeta", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "2 Dias"}, {"carrier": "estafeta", "description": null, "dimensions": [], + "human_readable": null, "max_weight": null, "name": "Terrestre"}, {"carrier": + "estafeta", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "LTL"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "Evri", "name": "evri", "predefined_packages": [], + "service_levels": [{"carrier": "evri", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Courier2Home"}, {"carrier": + "evri", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "Courier2HomeNextDay"}, {"carrier": "evri", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "Shop2Home"}, + {"carrier": "evri", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Shop2HomeNextDay"}, {"carrier": "evri", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "Shop2Shop"}, {"carrier": "evri", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Shop2ShopNextDay"}, {"carrier": "evri", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Shop2Home"}, {"carrier": "evri", "description": + null, "max_weight": null, "name": "Courier2Shop"}, {"carrier": "evri", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Shop2HomeNextDay"}, {"carrier": "evri", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Shop2Shop"}, {"carrier": + "Courier2ShopNextDay"}, {"carrier": "evri", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "International Delivery"}, + {"carrier": "evri", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Commercial"}, {"carrier": "evri", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "DDP Courier"}, {"carrier": "evri", "description": null, "dimensions": [], + "human_readable": null, "max_weight": null, "name": "DDU Courier"}, {"carrier": "evri", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Shop2ShopNextDay"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Fastway", "name": "fastway", "predefined_packages": - [{"carrier": "fastway", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Parcel"}, {"carrier": "fastway", "description": + null, "name": "DDU Shop"}, {"carrier": "evri", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Postal"}], "shipment_options": + [], "supported_features": []}, {"human_readable": "Fastway", "name": "fastway", + "predefined_packages": [{"carrier": "fastway", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Parcel"}, {"carrier": + "fastway", "description": "(Satchel)", "dimensions": [], "human_readable": + null, "max_weight": null, "name": "A2"}, {"carrier": "fastway", "description": "(Satchel)", "dimensions": [], "human_readable": null, "max_weight": null, - "name": "A2"}, {"carrier": "fastway", "description": "(Satchel)", "dimensions": - [], "human_readable": null, "max_weight": null, "name": "A3"}, {"carrier": - "fastway", "description": "(Satchel, not available in Australia)", "dimensions": - [], "human_readable": null, "max_weight": null, "name": "A4"}, {"carrier": - "fastway", "description": "(Satchel, not available in South Africa)", "dimensions": - [], "human_readable": null, "max_weight": null, "name": "A5"}, {"carrier": - "fastway", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "BOXSML"}, {"carrier": "fastway", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "BOXMED"}, {"carrier": "fastway", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "BOXLRG"}], "service_levels": [{"carrier": + "name": "A3"}, {"carrier": "fastway", "description": "(Satchel, not available + in Australia)", "dimensions": [], "human_readable": null, "max_weight": null, + "name": "A4"}, {"carrier": "fastway", "description": "(Satchel, not available + in South Africa)", "dimensions": [], "human_readable": null, "max_weight": + null, "name": "A5"}, {"carrier": "fastway", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "BOXSML"}, {"carrier": "fastway", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Parcel"}, {"carrier": "fastway", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Satchel"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "FedEx", "name": "fedex", "predefined_packages": [{"carrier": "fedex", "description": - "Up to approximately 60 pages", "dimensions": ["9.5in x 12.5in"], "human_readable": - null, "max_weight": 8.0, "name": "FedExEnvelope"}, {"carrier": "fedex", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "FedExBox"}, {"carrier": "fedex", "description": null, "dimensions": ["12in - x 15.5in"], "human_readable": null, "max_weight": 88.0, "name": "FedExPak"}, - {"carrier": "fedex", "description": "Triangular box for plans, posters, fabric - rolls, charts and blueprints", "dimensions": ["38in x 6in x 6in x 6in"], "human_readable": - null, "max_weight": 320.0, "name": "FedExTube"}, {"carrier": "fedex", "description": - "To qualify for the flat rate, weight cannot exceed 10 kg", "dimensions": - ["15.81in x 12.94in x 10.19in"], "human_readable": null, "max_weight": 352.0, - "name": "FedEx10kgBox"}, {"carrier": "fedex", "description": "To qualify for - the flat rate, weight cannot exceed 25 kg.", "dimensions": ["21.56in x 16.56in - x 13.19in"], "human_readable": null, "max_weight": 880.0, "name": "FedEx25kgBox"}, - {"carrier": "fedex", "description": null, "dimensions": ["12.25in x 10.9in - x 1.5in", "8.75in x 2.63in x 11.25in"], "human_readable": null, "max_weight": - 320.0, "name": "FedExSmallBox"}, {"carrier": "fedex", "description": null, - "dimensions": ["13.25in x 11.5in x 2.38in", "8.75in x 4.38in x 11.25in"], - "human_readable": null, "max_weight": 320.0, "name": "FedExMediumBox"}, {"carrier": - "fedex", "description": null, "dimensions": ["17.88in x 12.38in x 3in", "8.75in - x 7.75in x 11.25in"], "human_readable": null, "max_weight": 320.0, "name": - "FedExLargeBox"}, {"carrier": "fedex", "description": null, "dimensions": + "max_weight": null, "name": "BOXMED"}, {"carrier": "fastway", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "BOXLRG"}], "service_levels": [{"carrier": "fastway", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "Parcel"}, + {"carrier": "fastway", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Satchel"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "FedEx", "name": "fedex", "predefined_packages": [{"carrier": + "fedex", "description": "Up to approximately 60 pages", "dimensions": ["9.5in + x 12.5in"], "human_readable": null, "max_weight": 160.0, "name": "FedExEnvelope"}, + {"carrier": "fedex", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "FedExBox"}, {"carrier": "fedex", "description": + null, "dimensions": ["12in x 15.5in"], "human_readable": null, "max_weight": + 800.0, "name": "FedExPak"}, {"carrier": "fedex", "description": "Triangular + box for plans, posters, fabric rolls, charts and blueprints", "dimensions": + ["38in x 6in x 6in x 6in"], "human_readable": null, "max_weight": 800.0, "name": + "FedExTube"}, {"carrier": "fedex", "description": "To qualify for the flat + rate, weight cannot exceed 10 kg", "dimensions": ["15.81in x 12.94in x 10.19in"], + "human_readable": null, "max_weight": 352.0, "name": "FedEx10kgBox"}, {"carrier": + "fedex", "description": "To qualify for the flat rate, weight cannot exceed + 25 kg.", "dimensions": ["21.56in x 16.56in x 13.19in"], "human_readable": + null, "max_weight": 880.0, "name": "FedEx25kgBox"}, {"carrier": "fedex", "description": + "Maximum weight allowed is based on pricing option: 50 lbs (800 oz) for domestic + Express One Rate shipments, 20 lbs (320 oz) for domestic weight-based Express + shipments, 40 lbs (640 oz) for international weight-based Express shipments.", + "dimensions": ["12.25in x 10.9in x 1.5in", "8.75in x 2.63in x 11.25in"], "human_readable": + null, "max_weight": 800.0, "name": "FedExSmallBox"}, {"carrier": "fedex", + "description": "Maximum weight allowed is based on pricing option: 50 lbs + (800 oz) for domestic Express One Rate shipments, 20 lbs (320 oz) for domestic + weight-based Express shipments, 40 lbs (640 oz) for international weight-based + Express shipments.", "dimensions": ["13.25in x 11.5in x 2.38in", "8.75in x + 4.38in x 11.25in"], "human_readable": null, "max_weight": 800.0, "name": "FedExMediumBox"}, + {"carrier": "fedex", "description": "Maximum weight allowed is based on pricing + option: 50 lbs (800 oz) for domestic Express One Rate shipments, 20 lbs (320 + oz) for domestic weight-based Express shipments, 40 lbs (640 oz) for international + weight-based Express shipments.", "dimensions": ["17.88in x 12.38in x 3in", + "8.75in x 7.75in x 11.25in"], "human_readable": null, "max_weight": 800.0, + "name": "FedExLargeBox"}, {"carrier": "fedex", "description": "Maximum weight + allowed is based on pricing option: 50 lbs (800 oz) for domestic Express One + Rate shipments, 20 lbs (320 oz) for domestic weight-based Express shipments, + 40 lbs (640 oz) for international weight-based Express shipments.", "dimensions": ["11.88in x 10.75in x 11in", "15.25in x 14.13in x 6in"], "human_readable": - null, "max_weight": 320.0, "name": "FedExExtraLargeBox"}], "service_levels": + null, "max_weight": 800.0, "name": "FedExExtraLargeBox"}], "service_levels": [{"carrier": "fedex", "description": "2 business days by 4:30pm, Saturday delivery", "dimensions": null, "human_readable": "FedEx 2 Day", "max_weight": null, "name": "FEDEX_2_DAY"}, {"carrier": "fedex", "description": "2 business @@ -931,40 +1235,92 @@ interactions: "max_weight": null, "name": "INTERNATIONAL_FIRST"}, {"carrier": "fedex", "description": "1-3 business days, time definite to select markets", "dimensions": null, "human_readable": "FedEx International (First)", "max_weight": null, "name": - "INTERNATIONAL_PRIORITY"}, {"carrier": "fedex", "description": "By 10:30am + "FEDEX_INTERNATIONAL_PRIORITY"}, {"carrier": "fedex", "description": "By 10:30am the next business day, Saturday delivery", "dimensions": null, "human_readable": "FedEx Priority Overnight", "max_weight": null, "name": "PRIORITY_OVERNIGHT"}, {"carrier": "fedex", "description": "2-7 business days; Sunday Delivery to - select markets", "dimensions": null, "human_readable": "FedEx Smart Post", - "max_weight": null, "name": "SMART_POST"}, {"carrier": "fedex", "description": - "By 4:30pm the next business day", "dimensions": null, "human_readable": "FedEx - Standard Overnight", "max_weight": null, "name": "STANDARD_OVERNIGHT"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "FedEx Cross Border", "name": - "fedexcrossborder", "predefined_packages": [], "service_levels": [{"carrier": - "fedexcrossborder", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "CBEC"}, {"carrier": "fedexcrossborder", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "CBECL"}, {"carrier": "fedexcrossborder", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "CBECP"}], + select markets", "dimensions": null, "human_readable": "FedEx Ground Economy + (formerly FedEx SmartPost)", "max_weight": null, "name": "SMART_POST"}, {"carrier": + "fedex", "description": "By 4:30pm the next business day", "dimensions": null, + "human_readable": "FedEx Standard Overnight", "max_weight": null, "name": + "STANDARD_OVERNIGHT"}], "shipment_options": [], "supported_features": []}, + {"human_readable": "FedEx Cross Border", "name": "fedexcrossborder", "predefined_packages": + [], "service_levels": [{"carrier": "fedexcrossborder", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "CBEC"}, + {"carrier": "fedexcrossborder", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "CBECL"}, {"carrier": "fedexcrossborder", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "CBECP"}], "shipment_options": [], "supported_features": []}, + {"human_readable": "FedEx Ground Economy", "name": "fedexgroundeconomy", "predefined_packages": + [], "service_levels": [{"carrier": "fedexgroundeconomy", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "SMART_POST"}], "shipment_options": [], "supported_features": []}, {"human_readable": "FedEx - Mailview", "name": "fedexmailview", "predefined_packages": [], "service_levels": - [], "shipment_options": [], "supported_features": []}, {"human_readable": - "FedEx SmartPost", "name": "fedexsmartpost", "predefined_packages": [], "service_levels": + SmartPost", "name": "fedexsmartpost", "predefined_packages": [], "service_levels": [{"carrier": "fedexsmartpost", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "SMART_POST"}], "shipment_options": [], - "supported_features": []}, {"human_readable": "FirstMile", "name": "firstmile", - "predefined_packages": [], "service_levels": [{"carrier": "firstmile", "description": + "supported_features": []}, {"human_readable": "First Choice", "name": "firstchoice", + "predefined_packages": [], "service_levels": [{"carrier": "firstchoice", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "ST"}], "shipment_options": [], "supported_features": [{"carrier": "firstchoice", + "description": null, "name": "labels", "supported": null}]}, {"human_readable": + "First Mile", "name": "firstmile", "predefined_packages": [], "service_levels": + [{"carrier": "firstmile", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "XParcelPriority"}, {"carrier": "firstmile", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "XParcelExpedited"}, {"carrier": "firstmile", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "XParcelGround"}, {"carrier": "firstmile", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "XParcelExpedited"}, + "XParcelReturns"}, {"carrier": "firstmile", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "XParcelGround"}, {"carrier": "firstmile", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "XParcelExpeditedPlus"}, {"carrier": "firstmile", + null, "max_weight": null, "name": "XParcelExpeditedPlus"}], "shipment_options": + [], "supported_features": [{"carrier": "firstmile", "description": null, "name": + "labels", "supported": true}, {"carrier": "firstmile", "description": null, + "name": "orders", "supported": false}, {"carrier": "firstmile", "description": + null, "name": "pickups", "supported": false}, {"carrier": "firstmile", "description": + null, "name": "rating", "supported": true}, {"carrier": "firstmile", "description": + null, "name": "refunds", "supported": true}, {"carrier": "firstmile", "description": + null, "name": "returns", "supported": true}, {"carrier": "firstmile", "description": + null, "name": "scanforms", "supported": false}, {"carrier": "firstmile", "description": + null, "name": "test_environment", "supported": true}]}, {"human_readable": + "Flexport", "name": "flexport", "predefined_packages": [], "service_levels": + [{"carrier": "flexport", "description": null, "dimensions": [], "human_readable": + "Standard", "max_weight": null, "name": "Standard"}, {"carrier": "flexport", + "description": null, "dimensions": [], "human_readable": "Expedited", "max_weight": + null, "name": "Expedited"}], "shipment_options": [], "supported_features": + [{"carrier": "flexport", "description": null, "name": "bill_on_delivery", + "supported": false}, {"carrier": "flexport", "description": null, "name": + "bill_on_label_purchase", "supported": false}, {"carrier": "flexport", "description": + null, "name": "bill_on_manifest", "supported": false}, {"carrier": "flexport", + "description": null, "name": "bill_on_scan", "supported": true}, {"carrier": + "flexport", "description": null, "name": "commercial_invoices", "supported": + false}, {"carrier": "flexport", "description": null, "name": "delivers_to_po_box", + "supported": false}, {"carrier": "flexport", "description": null, "name": + "labels", "supported": true}, {"carrier": "flexport", "description": null, + "name": "orders", "supported": false}, {"carrier": "flexport", "description": + null, "name": "pickups", "supported": false}, {"carrier": "flexport", "description": + null, "name": "rating", "supported": true}, {"carrier": "flexport", "description": + null, "name": "refunds", "supported": false}, {"carrier": "flexport", "description": + null, "name": "returns", "supported": false}, {"carrier": "flexport", "description": + null, "name": "scanforms", "supported": false}, {"carrier": "flexport", "description": + null, "name": "sort_codes", "supported": false}, {"carrier": "flexport", "description": + null, "name": "test_environment", "supported": false}]}, {"human_readable": + "Gio", "name": "gio", "predefined_packages": [], "service_levels": [{"carrier": + "gio", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "scheduled"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "GLS", "name": "gls", "predefined_packages": [], "service_levels": + [{"carrier": "gls", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "EarlyPriorityOvernight"}, {"carrier": "gls", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "PriorityOvernight"}, {"carrier": "gls", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "CaliforniaParcelService"}, + {"carrier": "gls", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "SaturdayDeliveryService"}, {"carrier": + "gls", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "EarlySaturdayService"}, {"carrier": "gls", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "NoonPriorityService"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "GSO", + "name": "gso", "predefined_packages": [], "service_levels": [{"carrier": "gso", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "XParcelPriority"}, {"carrier": "firstmile", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "XParcelReturns"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "GSO", "name": "gso", "predefined_packages": [], "service_levels": [{"carrier": - "gso", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "EarlyPriorityOvernight"}, {"carrier": "gso", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "PriorityOvernight"}, {"carrier": "gso", "description": null, "dimensions": @@ -973,69 +1329,71 @@ interactions: null, "max_weight": null, "name": "SaturdayDeliveryService"}, {"carrier": "gso", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "EarlySaturdayService"}, {"carrier": "gso", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Ground"}, - {"carrier": "gso", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Overnight"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Hailify", "name": "hailify", "predefined_packages": - [], "service_levels": [{"carrier": "hailify", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Xpress"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Interlink Express", "name": - "interlinkexpress", "predefined_packages": [{"carrier": "interlinkexpress", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Parcel"}, {"carrier": "interlinkexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Pallet"}, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "NoonPriorityService"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "Hailify", + "name": "hailify", "predefined_packages": [], "service_levels": [{"carrier": + "hailify", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "Xpress"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "Henry", "name": "henry", "predefined_packages": [], + "service_levels": [{"carrier": "henry", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Distribution"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "Interlink + Express", "name": "interlinkexpress", "predefined_packages": [{"carrier": + "interlinkexpress", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Parcel"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "Pallet"}, {"carrier": "interlinkexpress", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "ExpressPak"}, {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpressPak"}, {"carrier": "interlinkexpress", + null, "max_weight": null, "name": "FreightParcel"}, {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "FreightParcel"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Freight"}], "service_levels": [{"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkAirClassicInternationalAir"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkAirExpressInternationalAir"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1By10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1By12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1NextDay"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1Saturday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1SaturdayBy10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1SaturdayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1Sunday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak1SundayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5By10"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5By10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5By12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5NextDay"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5Saturday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SaturdayBy10"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SaturdayBy10:30"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SaturdayBy12"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5Sunday"}, {"carrier": "interlinkexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkExpresspak5SundayBy12"}, {"carrier": "interlinkexpress", "description": + null, "name": "Freight"}], "service_levels": [{"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkAirClassicInternationalAir"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkAirExpressInternationalAir"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1By10:30"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1By12"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1NextDay"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1Saturday"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1SaturdayBy10:30"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1SaturdayBy12"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1Sunday"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak1SundayBy12"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5By10"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5By10:30"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5By12"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5NextDay"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5Saturday"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5SaturdayBy10"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5SaturdayBy10:30"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5SaturdayBy12"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5Sunday"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkExpresspak5SundayBy12"}, {"carrier": "interlinkexpress", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "InterlinkFreightBy10"}, {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InterlinkFreightBy10"}, {"carrier": "interlinkexpress", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkFreightBy12"}, + "InterlinkFreightBy12"}, {"carrier": "interlinkexpress", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkFreightNextDay"}, {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InterlinkFreightNextDay"}, {"carrier": - "interlinkexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkFreightSaturday"}, {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkFreightSaturdayBy10"}, {"carrier": @@ -1075,9 +1433,20 @@ interactions: null, "max_weight": null, "name": "InterlinkParcelTwoDay"}, {"carrier": "interlinkexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "InterlinkPickupParcelDpdEuropeByRoad"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "JP Post", "name": "jppost", - "predefined_packages": [], "service_levels": [], "shipment_options": [], "supported_features": - []}, {"human_readable": "Kuroneko Yamato", "name": "kuronekoyamato", "predefined_packages": + [], "supported_features": []}, {"human_readable": "Jet", "name": "jet", "predefined_packages": + [], "service_levels": [{"carrier": "jet", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Distribution"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "Jitsu", + "name": "jitsu", "predefined_packages": [], "service_levels": [{"carrier": + "jitsu", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "AxleHireDelivery"}], "shipment_options": [], "supported_features": + [{"carrier": "jitsu", "description": null, "name": "labels", "supported": + null}, {"carrier": "jitsu", "description": null, "name": "pickups", "supported": + null}, {"carrier": "jitsu", "description": null, "name": "rating", "supported": + true}, {"carrier": "jitsu", "description": null, "name": "scanforms", "supported": + null}]}, {"human_readable": "JP Post", "name": "jppost", "predefined_packages": + [], "service_levels": [], "shipment_options": [], "supported_features": []}, + {"human_readable": "Kuroneko Yamato", "name": "kuronekoyamato", "predefined_packages": [], "service_levels": [], "shipment_options": [], "supported_features": []}, {"human_readable": "La Poste", "name": "laposte", "predefined_packages": [], "service_levels": [], "shipment_options": [], "supported_features": []}, {"human_readable": @@ -1099,186 +1468,273 @@ interactions: null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "LoomisExpress1200"}, {"carrier": "loomisexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "LoomisExpress900"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "LSO", - "name": "lso", "predefined_packages": [], "service_levels": [{"carrier": "lso", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "GroundEarly"}, {"carrier": "lso", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "GroundBasic"}, {"carrier": - "lso", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PriorityBasic"}, {"carrier": "lso", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "PriorityEarly"}, - {"carrier": "lso", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "PrioritySaturday"}, {"carrier": "lso", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Priority2ndDay"}, {"carrier": "lso", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SameDay"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Maergo", "name": "maergo", - "predefined_packages": [], "service_levels": [{"carrier": "maergo", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Standard"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "Newgistics", "name": "newgistics", "predefined_packages": [], "service_levels": - [{"carrier": "newgistics", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ParcelSelect"}, {"carrier": "newgistics", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ParcelSelectLightweight"}, {"carrier": "newgistics", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Ground"}, {"carrier": "newgistics", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "Express"}, {"carrier": - "newgistics", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "FirstClassMail"}, {"carrier": "newgistics", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PriorityMail"}, {"carrier": "newgistics", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "BoundPrintedMatter"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "Ontrac", - "name": "ontrac", "predefined_packages": [{"carrier": "ontrac", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Letter"}], "service_levels": [{"carrier": "ontrac", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Sunrise"}, - {"carrier": "ontrac", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Gold"}, {"carrier": "ontrac", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "OnTracGround"}, {"carrier": "ontrac", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "SameDay"}, {"carrier": - "ontrac", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "PalletizedFreight"}], "shipment_options": [], "supported_features": + "shipment_options": [], "supported_features": [{"carrier": "loomisexpress", + "description": null, "name": "labels", "supported": null}, {"carrier": "loomisexpress", + "description": null, "name": "pickups", "supported": null}, {"carrier": "loomisexpress", + "description": null, "name": "rating", "supported": true}, {"carrier": "loomisexpress", + "description": null, "name": "scanforms", "supported": null}, {"carrier": + "loomisexpress", "description": null, "name": "test_environment", "supported": + null}]}, {"human_readable": "LSO", "name": "lso", "predefined_packages": [], + "service_levels": [{"carrier": "lso", "description": null, "dimensions": null, + "human_readable": "Early Next Day by 8:30 a.m.", "max_weight": null, "name": + "PriorityEarly"}, {"carrier": "lso", "description": null, "dimensions": null, + "human_readable": "Priority Next Day by 10:30 a.m.", "max_weight": null, "name": + "PriorityBasic"}, {"carrier": "lso", "description": null, "dimensions": null, + "human_readable": "Priority 2nd Business Day", "max_weight": null, "name": + "Priority2ndDay"}, {"carrier": "lso", "description": null, "dimensions": null, + "human_readable": "Economy Next Day by 3 p.m.", "max_weight": null, "name": + "GroundEarly"}, {"carrier": "lso", "description": null, "dimensions": null, + "human_readable": "Ground Basic in 1-3 business days", "max_weight": null, + "name": "GroundBasic"}, {"carrier": "lso", "description": null, "dimensions": + null, "human_readable": "eCommerce", "max_weight": null, "name": "ECommerce"}], + "shipment_options": [{"carrier": "lso", "deprecated": false, "description": + null, "human_readable": "Delivery Confirmation", "name": "delivery_confirmation", + "type": "string"}, {"carrier": "lso", "deprecated": false, "description": + null, "human_readable": "Saturday Delivery", "name": "saturday_delivery", + "type": "boolean"}, {"carrier": "lso", "deprecated": true, "description": + null, "human_readable": "Date Advance", "name": "date_advance", "type": "integer"}, + {"carrier": "lso", "deprecated": true, "description": null, "human_readable": + "Declared Value", "name": "declared_value", "type": "float"}, {"carrier": + "lso", "deprecated": false, "description": null, "human_readable": "Label + Format", "name": "label_format", "type": "string"}, {"carrier": "lso", "deprecated": + false, "description": null, "human_readable": "Label Size", "name": "label_size", + "type": "string"}, {"carrier": "lso", "deprecated": true, "description": null, + "human_readable": "Print Custom 1", "name": "print_custom_1", "type": "string"}, + {"carrier": "lso", "deprecated": true, "description": null, "human_readable": + "Print Custom 2", "name": "print_custom_2", "type": "string"}, {"carrier": + "lso", "deprecated": true, "description": null, "human_readable": "Print Custom + 3", "name": "print_custom_3", "type": "string"}], "supported_features": [{"carrier": + "lso", "description": null, "name": "bill_on_delivery", "supported": false}, + {"carrier": "lso", "description": null, "name": "bill_on_label_purchase", + "supported": false}, {"carrier": "lso", "description": null, "name": "bill_on_manifest", + "supported": false}, {"carrier": "lso", "description": null, "name": "bill_on_scan", + "supported": true}, {"carrier": "lso", "description": null, "name": "commercial_invoices", + "supported": false}, {"carrier": "lso", "description": null, "name": "delivers_to_po_box", + "supported": false}, {"carrier": "lso", "description": null, "name": "labels", + "supported": true}, {"carrier": "lso", "description": null, "name": "orders", + "supported": false}, {"carrier": "lso", "description": null, "name": "pickups", + "supported": true}, {"carrier": "lso", "description": null, "name": "rating", + "supported": true}, {"carrier": "lso", "description": null, "name": "refunds", + "supported": false}, {"carrier": "lso", "description": null, "name": "returns", + "supported": false}, {"carrier": "lso", "description": null, "name": "scanforms", + "supported": false}, {"carrier": "lso", "description": null, "name": "sort_codes", + "supported": false}, {"carrier": "lso", "description": null, "name": "test_environment", + "supported": true}]}, {"human_readable": "Maersk", "name": "maersk", "predefined_packages": + [], "service_levels": [{"carrier": "maersk", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Maersk-3-Day"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "NextDayExpress", + "name": "nextdayexpress", "predefined_packages": [], "service_levels": [{"carrier": + "nextdayexpress", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "N2D"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "OnTracV3", "name": "ontracv3", "predefined_packages": + [{"carrier": "ontracv3", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Letter"}], "service_levels": [{"carrier": + "ontracv3", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "GRND"}], "shipment_options": [], "supported_features": []}, {"human_readable": "Optima", "name": "optima", "predefined_packages": [], "service_levels": [{"carrier": "optima", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "NxtDay"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "OSM Worldwide", "name": - "osmworldwide", "predefined_packages": [{"carrier": "osmworldwide", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "parcel"}, {"carrier": "osmworldwide", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "irregularparcel"}, + ["Maximum length: 48in", "Maximum width: 32in", "Maximum height: 32in"], "human_readable": + null, "max_weight": 800.0, "name": "NxtDay"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "OSM Worldwide", "name": "osmworldwide", "predefined_packages": + [{"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "parcel"}, {"carrier": "osmworldwide", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "irregularparcel"}, {"carrier": "osmworldwide", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "softpack"}], "service_levels": + [{"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + "Priority", "max_weight": null, "name": "Priority"}, {"carrier": "osmworldwide", + "description": null, "dimensions": [], "human_readable": "BPM", "max_weight": + null, "name": "BPM"}, {"carrier": "osmworldwide", "description": null, "dimensions": + [], "human_readable": "Parcel Select", "max_weight": null, "name": "ParcelSelect"}, {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "softpack"}], "service_levels": [{"carrier": - "osmworldwide", "description": null, "dimensions": [], "human_readable": "First", - "max_weight": null, "name": "First"}, {"carrier": "osmworldwide", "description": - null, "dimensions": [], "human_readable": "Parcel Select Lightweight", "max_weight": - null, "name": "ParcelSelectLightweight"}, {"carrier": "osmworldwide", "description": - null, "dimensions": [], "human_readable": "Priority", "max_weight": null, - "name": "Priority"}, {"carrier": "osmworldwide", "description": null, "dimensions": - [], "human_readable": "BPM", "max_weight": null, "name": "BPM"}, {"carrier": + "Media Mail", "max_weight": null, "name": "MediaMail"}, {"carrier": "osmworldwide", + "description": null, "dimensions": [], "human_readable": "Marketing Parcel", + "max_weight": null, "name": "MarketingParcel"}, {"carrier": "osmworldwide", + "description": null, "dimensions": [], "human_readable": "Marketing Parcel + Tracked", "max_weight": null, "name": "MarketingParcelTracked"}, {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": "Parcel - Select", "max_weight": null, "name": "ParcelSelect"}, {"carrier": "osmworldwide", - "description": null, "dimensions": [], "human_readable": "Media Mail", "max_weight": - null, "name": "MediaMail"}, {"carrier": "osmworldwide", "description": null, - "dimensions": [], "human_readable": "Marketing Parcel", "max_weight": null, - "name": "MarketingParcel"}, {"carrier": "osmworldwide", "description": null, - "dimensions": [], "human_readable": "Marketing Parcel Tracked", "max_weight": - null, "name": "MarketingParcelTracked"}], "shipment_options": [], "supported_features": - [{"carrier": "osmworldwide", "description": null, "name": "labels", "supported": - true}, {"carrier": "osmworldwide", "description": null, "name": "orders", - "supported": false}, {"carrier": "osmworldwide", "description": null, "name": - "pickups", "supported": false}, {"carrier": "osmworldwide", "description": - null, "name": "refunds", "supported": false}, {"carrier": "osmworldwide", + Select Hazardous Material", "max_weight": null, "name": "ParcelSelectHazardousMaterial"}, + {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + "USPS Ground Advantage", "max_weight": null, "name": "USPSGroundAdvantage"}, + {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + "USPS Ground Advantage Lightweight", "max_weight": null, "name": "USPSGroundAdvantageLightweight"}, + {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + "USPS Ground Advantage Hazmat", "max_weight": null, "name": "USPSGroundAdvantageHazmat"}, + {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + "USPS Ground Advantage Hazmat Signature", "max_weight": null, "name": "USPSGroundAdvantageHazmatSignature"}, + {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + "USPS Ground Advantage Lightweight Hazmat", "max_weight": null, "name": "USPSGroundAdvantageLightweightHazmat"}, + {"carrier": "osmworldwide", "description": null, "dimensions": [], "human_readable": + "USPS Ground Advantage Lightweight Hazmat Signature", "max_weight": null, + "name": "USPSGroundAdvantageLightweightHazmatSignature"}, {"carrier": "osmworldwide", + "description": null, "dimensions": [], "human_readable": "Parcel Select Hazmat + Signature", "max_weight": null, "name": "ParcelSelectHazmatSignature"}], "shipment_options": + [], "supported_features": [{"carrier": "osmworldwide", "description": null, + "name": "labels", "supported": true}, {"carrier": "osmworldwide", "description": + null, "name": "orders", "supported": false}, {"carrier": "osmworldwide", "description": + null, "name": "pickups", "supported": false}, {"carrier": "osmworldwide", + "description": null, "name": "rating", "supported": true}, {"carrier": "osmworldwide", + "description": null, "name": "refunds", "supported": false}, {"carrier": "osmworldwide", "description": null, "name": "returns", "supported": false}, {"carrier": "osmworldwide", "description": "Manifesting", "name": "scanforms", "supported": true}, {"carrier": - "osmworldwide", "description": null, "name": "rating", "supported": false}, - {"carrier": "osmworldwide", "description": null, "name": "tracking", "supported": - false}, {"carrier": "osmworldwide", "description": null, "name": "sort_codes", + "osmworldwide", "description": null, "name": "sort_codes", "supported": true}]}, + {"human_readable": "Pandion", "name": "pandion", "predefined_packages": [], + "service_levels": [{"carrier": "pandion", "description": null, "dimensions": + [], "human_readable": "Pandion Express", "max_weight": null, "name": "Pandion + Express"}], "shipment_options": [], "supported_features": [{"carrier": "pandion", + "description": null, "name": "bill_on_delivery", "supported": false}, {"carrier": + "pandion", "description": null, "name": "bill_on_label_purchase", "supported": + false}, {"carrier": "pandion", "description": null, "name": "bill_on_manifest", + "supported": true}, {"carrier": "pandion", "description": null, "name": "bill_on_scan", + "supported": true}, {"carrier": "pandion", "description": null, "name": "commercial_invoices", + "supported": false}, {"carrier": "pandion", "description": null, "name": "delivers_to_po_box", + "supported": false}, {"carrier": "pandion", "description": null, "name": "labels", + "supported": true}, {"carrier": "pandion", "description": null, "name": "orders", + "supported": false}, {"carrier": "pandion", "description": null, "name": "pickups", + "supported": false}, {"carrier": "pandion", "description": null, "name": "rating", + "supported": true}, {"carrier": "pandion", "description": null, "name": "refunds", + "supported": false}, {"carrier": "pandion", "description": null, "name": "returns", + "supported": true}, {"carrier": "pandion", "description": null, "name": "scanforms", + "supported": true}, {"carrier": "pandion", "description": null, "name": "sort_codes", + "supported": false}, {"carrier": "pandion", "description": null, "name": "test_environment", "supported": true}]}, {"human_readable": "Parcelforce", "name": "parcelforce", "predefined_packages": [], "service_levels": [{"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express9"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Express9Secure"}, - {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express9CourierPack"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express10"}, {"carrier": "parcelforce", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Express10Secure"}, + "europrioritybusiness"}, {"carrier": "parcelforce", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "europriorityhome"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express10Exchange"}, {"carrier": "parcelforce", + null, "max_weight": null, "name": "express10"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express10SecureExchange"}, {"carrier": "parcelforce", "description": + null, "name": "express10CourierPack"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express10CourierPack"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ExpressAM"}, {"carrier": + "express10Exchange"}, {"carrier": "parcelforce", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "express10Secure"}, + {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "express10SecureExchange"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "ExpressAMSecure"}, {"carrier": "parcelforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressAMExchange"}, {"carrier": "parcelforce", "description": + "max_weight": null, "name": "express24"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ExpressAMSecureExchange"}, {"carrier": "parcelforce", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "ExpressAMCourierPack"}, + "express24CourierPack"}, {"carrier": "parcelforce", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "express24Exchange"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpressPM"}, {"carrier": "parcelforce", + null, "max_weight": null, "name": "express24large"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ExpressPMSecure"}, {"carrier": "parcelforce", "description": + null, "name": "express24Secure"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express24"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Express24Large"}, + "express24SecureExchange"}, {"carrier": "parcelforce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "express48"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express24Secure"}, {"carrier": "parcelforce", + null, "max_weight": null, "name": "express48large"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express24Exchange"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Express24SecureExchange"}, {"carrier": "parcelforce", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "Express24CourierPack"}, + null, "name": "express9"}, {"carrier": "parcelforce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "express9CourierPack"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Express48"}, {"carrier": "parcelforce", + null, "max_weight": null, "name": "express9Secure"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Express48Large"}, {"carrier": "parcelforce", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "ParcelRiderPlus"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "GlobalBulkDirect"}, + null, "name": "expressAM"}, {"carrier": "parcelforce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "expressAMCourierPack"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "GlobalExpress"}, {"carrier": "parcelforce", + null, "max_weight": null, "name": "expressAMExchange"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "GlobalExpressEnvelopeDelivery"}, {"carrier": "parcelforce", + null, "name": "expressAMSecure"}, {"carrier": "parcelforce", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "expressAMSecureExchange"}, {"carrier": "parcelforce", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "expressPM"}, + {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "expressPMSecure"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "GlobalExpressPackDelivery"}, {"carrier": "parcelforce", "description": + null, "name": "globalBulkDirect"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "GlobalValue"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "GlobalPriority"}, + "globalexpress"}, {"carrier": "parcelforce", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "globalexpressEnvelopeDelivery"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "GlobalPriorityReturns"}, {"carrier": "parcelforce", + null, "max_weight": null, "name": "globalexpressPackDelivery"}, {"carrier": + "parcelforce", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "globalpriority"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "EuroPriorityHome"}, {"carrier": "parcelforce", "description": + null, "name": "globalpriorityReturns"}, {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EuroPriorityBusiness"}, {"carrier": "parcelforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "IrelandExpress"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "PARCLL", - "name": "parcll", "predefined_packages": [], "service_levels": [{"carrier": - "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "ECOWE (Economy West)"}, {"carrier": "parcll", "description": + "globalvalue"}, {"carrier": "parcelforce", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "irelandexpress"}, + {"carrier": "parcelforce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "ParcelRiderPlus"}], "shipment_options": + [], "supported_features": []}, {"human_readable": "PARCLL", "name": "parcll", + "predefined_packages": [], "service_levels": [{"carrier": "parcll", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "CADOECOEA (Canada Domestic Economy East)"}, {"carrier": "parcll", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "CADOECOWE (Canada Domestic Economy West)"}, {"carrier": "parcll", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "CAECONE (USA to Canada Economy Northeast)"}, {"carrier": "parcll", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "CAECOWE (USA to Canada Economy West)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "ECOCE (Economy Central)"}, {"carrier": "parcll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "ECONE (Economy Northeast)"}, + [], "human_readable": null, "max_weight": null, "name": "ECOEA (Economy East)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ECOEA (Economy East)"}, {"carrier": "parcll", - "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "max_weight": null, "name": "ECONE (Economy Northeast)"}, {"carrier": + "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "ECOSO (Economy South)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EXPWE (Expedited West)"}, {"carrier": "parcll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "EXPBNE (Expedited + "ECOWE (Economy West)"}, {"carrier": "parcll", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "EUECONE (USA to EU + Economy Northeast)"}, {"carrier": "parcll", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "EXPNE (Expedited Northeast)"}, {"carrier": "parcll", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "REGWE (Regional West)"}, + "human_readable": null, "max_weight": null, "name": "EXPWE (Expedited West)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "REGCE (Regional Central)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "REGNE (Regional Northeast)"}, {"carrier": "parcll", "description": + null, "name": "REGEA (Regional East)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "REGEA (Regional East)"}, {"carrier": "parcll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "REGSO (Regional South)"}, + "REGNE (Regional Northeast)"}, {"carrier": "parcll", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "REGSO + (Regional South)"}, {"carrier": "parcll", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "REGWE (Regional West)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "CAECOWE (US to CA Economy)"}, {"carrier": + null, "max_weight": null, "name": "STDWE (Standard West LA)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "CAECOCE (US to CA Economy)"}, {"carrier": "parcll", "description": + null, "name": "STDSL (Standard SL Salt Lake City)"}, {"carrier": "parcll", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "STDCE (Standard Central ORD/Chicago)"}, {"carrier": "parcll", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "STDNJ (Standard NJ New Jersey)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "CAECONE (US to CA Economy)"}, {"carrier": "parcll", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "EUECOWE - (US to Europe Economy)"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "Passport", "name": "passportglobal", "predefined_packages": - [], "service_levels": [], "shipment_options": [], "supported_features": []}, - {"human_readable": "PostNL", "name": "postnl", "predefined_packages": [], - "service_levels": [], "shipment_options": [], "supported_features": []}, {"human_readable": - "Purolator", "name": "purolator", "predefined_packages": [{"carrier": "purolator", - "description": null, "dimensions": [], "human_readable": "CustomerPackaging", - "max_weight": null, "name": "CUSTOMERPACKAGING"}, {"carrier": "purolator", - "description": null, "dimensions": [], "human_readable": "ExpressPack", "max_weight": - null, "name": "EXPRESSPACK"}, {"carrier": "purolator", "description": null, - "dimensions": [], "human_readable": "ExpressBox", "max_weight": null, "name": - "EXPRESSBOX"}, {"carrier": "purolator", "description": null, "dimensions": + "STDNE (Standard Northeast New York/JFK)"}, {"carrier": "parcll", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "STDEA (Standard East ATL)"}, {"carrier": "parcll", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "STDSE (Standard Southeast + Miami)"}, {"carrier": "parcll", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "STDSO (Standard South DFW/Dallas)"}, {"carrier": + "parcll", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "USECOCA (Canada to USA Economy East)"}, {"carrier": "parcll", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "GBECONE (USA to UK Economy Northeast)"}, {"carrier": "parcll", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "EXPNJ (Expedited New Jersey)"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "Passport Global", "name": "passportglobal", "predefined_packages": + [], "service_levels": [{"carrier": "passportglobal", "description": "PriorityDdpDelcon", + "dimensions": null, "human_readable": "Priority DDP Delcon", "max_weight": + null, "name": "PriorityDdpDelcon"}, {"carrier": "passportglobal", "description": + "Priority DDP", "dimensions": null, "human_readable": "Priority DDP", "max_weight": + null, "name": "PriorityDdp"}, {"carrier": "passportglobal", "description": + "ePacket DDP", "dimensions": null, "human_readable": "ePacket DDP", "max_weight": + null, "name": "epacketDdp"}, {"carrier": "passportglobal", "description": + "Express DDP", "dimensions": null, "human_readable": "Express DDP", "max_weight": + null, "name": "ExpressDdp"}, {"carrier": "passportglobal", "description": + "Priority DDU Delcon", "dimensions": null, "human_readable": "Priority DDU + Delcon", "max_weight": null, "name": "PriorityDduDelcon"}, {"carrier": "passportglobal", + "description": "Priority DDU", "dimensions": null, "human_readable": "Priority + DDU", "max_weight": null, "name": "PriorityDdu"}], "shipment_options": [], + "supported_features": []}, {"human_readable": "PostNL", "name": "postnl", + "predefined_packages": [], "service_levels": [], "shipment_options": [], "supported_features": + []}, {"human_readable": "Purolator", "name": "purolator", "predefined_packages": + [{"carrier": "purolator", "description": null, "dimensions": [], "human_readable": + "CustomerPackaging", "max_weight": null, "name": "CUSTOMERPACKAGING"}, {"carrier": + "purolator", "description": null, "dimensions": [], "human_readable": "ExpressPack", + "max_weight": null, "name": "EXPRESSPACK"}, {"carrier": "purolator", "description": + null, "dimensions": [], "human_readable": "ExpressBox", "max_weight": null, + "name": "EXPRESSBOX"}, {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": "ExpressEnvelope", "max_weight": null, "name": "EXPRESSENVELOPE"}], "service_levels": [{"carrier": "purolator", "description": null, "dimensions": [], "human_readable": "Purolator Express", "max_weight": null, "name": "PurolatorExpress"}, @@ -1411,85 +1867,91 @@ interactions: {"carrier": "purolator", "description": null, "dimensions": [], "human_readable": "Purolator Quick Ship Box", "max_weight": null, "name": "PurolatorQuickShipBox"}], "shipment_options": [], "supported_features": [{"carrier": "purolator", "description": - null, "name": "labels", "supported": true}, {"carrier": "purolator", "description": - null, "name": "orders", "supported": true}, {"carrier": "purolator", "description": - null, "name": "pickups", "supported": true}, {"carrier": "purolator", "description": - "Purolator bills at the end of the day for all labels created that day. You - cannot refund a label after the end of the day it was created.", "name": "refunds", - "supported": true}, {"carrier": "purolator", "description": null, "name": - "returns", "supported": true}, {"carrier": "purolator", "description": null, - "name": "scanforms", "supported": true}, {"carrier": "purolator", "description": - null, "name": "rating", "supported": false}, {"carrier": "purolator", "description": - null, "name": "tracking", "supported": false}, {"carrier": "purolator", "description": null, "name": "bill_on_delivery", "supported": true}, {"carrier": "purolator", "description": null, "name": "commercial_invoices", "supported": true}, {"carrier": + "purolator", "description": null, "name": "labels", "supported": true}, {"carrier": + "purolator", "description": null, "name": "orders", "supported": true}, {"carrier": + "purolator", "description": null, "name": "pickups", "supported": true}, {"carrier": + "purolator", "description": null, "name": "rating", "supported": true}, {"carrier": + "purolator", "description": "Purolator bills at the end of the day for all + labels created that day. You cannot refund a label after the end of the day + it was created.", "name": "refunds", "supported": true}, {"carrier": "purolator", + "description": null, "name": "returns", "supported": true}, {"carrier": "purolator", + "description": null, "name": "scanforms", "supported": true}, {"carrier": "purolator", "description": null, "name": "sort_codes", "supported": false}, {"carrier": "purolator", "description": null, "name": "test_environment", - "supported": true}]}, {"human_readable": "Royal Mail", "name": "royalmail", - "predefined_packages": [{"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "LARGELETTER"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "SMALLPARCEL"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "MEDIUMPARCEL"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "LETTER"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "PRINTEDPAPER"}], "service_levels": [{"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "InternationalPriority"}, {"carrier": "royalmail", + "supported": true}]}, {"human_readable": "Quick", "name": "quick", "predefined_packages": + [], "service_levels": [{"carrier": "quick", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Routed"}], "shipment_options": + [], "supported_features": []}, {"human_readable": "Rover", "name": "rover", + "predefined_packages": [], "service_levels": [{"carrier": "rover", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "WeSh-Vape"}], "shipment_options": [], "supported_features": []}, {"human_readable": + "Royal Mail", "name": "royalmail", "predefined_packages": [{"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InternationalEconomy"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalStandard"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "InternationalTrackedAndSigned"}, + null, "name": "LARGELETTER"}, {"carrier": "royalmail", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "SMALLPARCEL"}, + {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "MEDIUMPARCEL"}, {"carrier": "royalmail", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "LETTER"}, {"carrier": "royalmail", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "PRINTEDPAPER"}], + "service_levels": [{"carrier": "royalmail", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "InternationalPriority"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "InternationalTracked"}, {"carrier": "royalmail", + null, "max_weight": null, "name": "InternationalEconomy"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "InternationalSigned"}, {"carrier": "royalmail", "description": + null, "name": "InternationalStandard"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "AccountMail"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "RoyalMailUnsigned"}, + "InternationalTrackedAndSigned"}, {"carrier": "royalmail", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "InternationalTracked"}, {"carrier": "royalmail", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "InternationalSigned"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "RoyalMail"}, {"carrier": "royalmail", "description": + null, "max_weight": null, "name": "AccountMail"}, {"carrier": "royalmail", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "RoyalMailUnsigned"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "SpecialDeliveryGuaranteed"}, {"carrier": "royalmail", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "SpecialDeliveryGuaranteed1pm"}, + "RoyalMail"}, {"carrier": "royalmail", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "SpecialDeliveryGuaranteed"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "SpecialDeliveryGuaranteed9am"}, {"carrier": + null, "max_weight": null, "name": "SpecialDeliveryGuaranteed1pm"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "StandardLetter"}, {"carrier": "royalmail", "description": + "max_weight": null, "name": "SpecialDeliveryGuaranteed9am"}, {"carrier": "royalmail", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "StandardLetter"}, {"carrier": "royalmail", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "Tracked24"}, + {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "Tracked24HighVolume"}, {"carrier": "royalmail", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "Tracked24HighVolumeSignature"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Tracked24"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Tracked24HighVolume"}, + "Tracked24LBT"}, {"carrier": "royalmail", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Tracked24SignatureLBT"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Tracked24HighVolumeSignature"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Tracked24LBT"}, {"carrier": "royalmail", "description": + null, "max_weight": null, "name": "Tracked48LBT"}, {"carrier": "royalmail", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "Tracked48SignatureLBT"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Tracked24SignatureLBT"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Tracked48LBT"}, {"carrier": + "Tracked24Signature"}, {"carrier": "royalmail", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Tracked48"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Tracked48SignatureLBT"}, {"carrier": "royalmail", + "max_weight": null, "name": "Tracked48HighVolume"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Tracked24Signature"}, {"carrier": "royalmail", "description": + null, "name": "Tracked48HighVolumeSignature"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Tracked48"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Tracked48HighVolume"}, + "Tracked48Signature"}, {"carrier": "royalmail", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "TrackedReturns24"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "Tracked48HighVolumeSignature"}, {"carrier": - "royalmail", "description": null, "dimensions": [], "human_readable": null, - "max_weight": null, "name": "Tracked48Signature"}, {"carrier": "royalmail", + null, "max_weight": null, "name": "TrackedReturns48"}, {"carrier": "royalmail", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "TrackedReturns24"}, {"carrier": "royalmail", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "TrackedReturns48"}, {"carrier": "royalmail", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "CrossBorderImportTracked48HighVolume"}], - "shipment_options": [{"carrier": "royalmail", "deprecated": false, "description": - null, "human_readable": "Carrier Insurance Amount", "name": "carrier_insurance_amount", - "type": "float"}, {"carrier": "royalmail", "deprecated": false, "description": - null, "human_readable": "Carrier Notification Email", "name": "carrier_notification_email", - "type": "boolean"}, {"carrier": "royalmail", "deprecated": false, "description": - null, "human_readable": "Carrier Notification Sms", "name": "carrier_notification_sms", + null, "name": "CrossBorderImportTracked48HighVolume"}], "shipment_options": + [{"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": + "Carrier Insurance Amount", "name": "carrier_insurance_amount", "type": "float"}, + {"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": + "Carrier Notification Email", "name": "carrier_notification_email", "type": + "boolean"}, {"carrier": "royalmail", "deprecated": false, "description": null, + "human_readable": "Carrier Notification Sms", "name": "carrier_notification_sms", "type": "boolean"}, {"carrier": "royalmail", "deprecated": true, "description": null, "human_readable": "Date Advance", "name": "date_advance", "type": "integer"}, {"carrier": "royalmail", "deprecated": true, "description": null, "human_readable": @@ -1515,25 +1977,528 @@ interactions: "name": "print_custom_2", "type": "string"}, {"carrier": "royalmail", "deprecated": false, "description": null, "human_readable": "Saturday Delivery", "name": "saturday_delivery", "type": "boolean"}], "supported_features": [{"carrier": - "royalmail", "description": null, "name": "labels", "supported": true}, {"carrier": - "royalmail", "description": null, "name": "orders", "supported": false}, {"carrier": - "royalmail", "description": null, "name": "pickups", "supported": false}, - {"carrier": "royalmail", "description": null, "name": "refunds", "supported": + "royalmail", "description": null, "name": "bill_on_delivery", "supported": + false}, {"carrier": "royalmail", "description": null, "name": "bill_on_label_purchase", + "supported": false}, {"carrier": "royalmail", "description": null, "name": + "bill_on_manifest", "supported": true}, {"carrier": "royalmail", "description": + null, "name": "bill_on_scan", "supported": false}, {"carrier": "royalmail", + "description": null, "name": "commercial_invoices", "supported": false}, {"carrier": + "royalmail", "description": null, "name": "delivers_to_po_box", "supported": + true}, {"carrier": "royalmail", "description": null, "name": "labels", "supported": + true}, {"carrier": "royalmail", "description": null, "name": "orders", "supported": + false}, {"carrier": "royalmail", "description": null, "name": "pickups", "supported": + false}, {"carrier": "royalmail", "description": null, "name": "rating", "supported": + true}, {"carrier": "royalmail", "description": null, "name": "refunds", "supported": true}, {"carrier": "royalmail", "description": null, "name": "returns", "supported": true}, {"carrier": "royalmail", "description": null, "name": "scanforms", "supported": true}, {"carrier": "royalmail", "description": null, "name": - "rating", "supported": false}, {"carrier": "royalmail", "description": null, - "name": "tracking", "supported": false}, {"carrier": "royalmail", "description": - null, "name": "bill_on_label_purchase", "supported": false}, {"carrier": "royalmail", - "description": null, "name": "bill_on_delivery", "supported": false}, {"carrier": - "royalmail", "description": null, "name": "bill_on_scan", "supported": false}, - {"carrier": "royalmail", "description": null, "name": "bill_on_manifest", - "supported": true}, {"carrier": "royalmail", "description": null, "name": - "commercial_invoices", "supported": false}, {"carrier": "royalmail", "description": - null, "name": "delivers_to_po_box", "supported": true}, {"carrier": "royalmail", - "description": null, "name": "sort_codes", "supported": true}, {"carrier": - "royalmail", "description": null, "name": "test_environment", "supported": - true}]}, {"human_readable": "SEKO OmniParcel", "name": "sekoomniparcel", "predefined_packages": + "sort_codes", "supported": true}, {"carrier": "royalmail", "description": + null, "name": "test_environment", "supported": true}]}, {"human_readable": + "RoyalMailV3", "name": "royalmailv3", "predefined_packages": [{"carrier": + "royalmailv3", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "LargeLetter"}, {"carrier": "royalmailv3", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "Letter"}, {"carrier": "royalmailv3", "description": null, "dimensions": [], + "human_readable": null, "max_weight": null, "name": "Parcel"}, {"carrier": + "royalmailv3", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "PrintedPapers"}], "service_levels": [{"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, + Combined < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": + "DEImportRoyalMail24PlusParcelsWeekendService"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": + null, "max_weight": 26.46, "name": "DEImportStandard24LargeLetter"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], + "human_readable": null, "max_weight": 26.46, "name": "DEImportStandard24LargeLetterWeekendService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "DEImportStandard24Parcel"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined < 40.94in"], "human_readable": + null, "max_weight": 1058.2, "name": "DEImportStandard24ParcelWeekendService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 26.46, "name": "DEImportStandard48LargeLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 26.46, "name": "DEImportStandard48LargeLetterWeekendService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "DEImportTracked24ParcelBoxableHighVolumeWeekendService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "DEImportTracked24ParcelBoxableWeekendService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "DEImportTracked24ParcelHighVolumeWeekendService"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, + Combined < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": + "DEImportTracked24SignatureParcelHighVolumeWeekendServiceAGE"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], + "human_readable": null, "max_weight": 35.27, "name": "DEImportTracked48ParcelBoxableHighVolumeWeekendService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "DEImportTracked48ParcelBoxableWeekendService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "DEImportTracked48ParcelHighVolumeWeekendService"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, + Combined < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": + "DEImportTracked48SignatureParcelHighVolumeAGE"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "DEImportTracked48SignatureParcelHighVolumeWeekendServiceAGE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "DEImporttoEUMaxSortLargeLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "DEImporttoEUMaxSortParcel"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined < 40.94in"], "human_readable": + null, "max_weight": 176.37, "name": "DEImporttoEUSignedParcel"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in x 0.98in"], + "human_readable": null, "max_weight": 17.64, "name": "DEImporttoEUTrackedHighVolLargeLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "DEImporttoEUTrackedParcel"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["15.0in x 12.01in x 0.98in"], "human_readable": null, + "max_weight": 17.64, "name": "DEImporttoEUTrackedSignedLargeLetter"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": + "DEImporttoEUTrackedSignedParcel"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined < 40.94in"], "human_readable": + null, "max_weight": 70.55, "name": "HMForcesMail"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "HMForcesSignedFor"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "HMForcesSpecialDelivery1000"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "HMForcesSpecialDelivery2500"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "HMForcesSpecialDelivery500"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined < 40.94in"], "human_readable": + null, "max_weight": 1058.2, "name": "ImportDETracked24"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "ImportDETracked24HighVolume"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "ImportDETracked24Letterboxable"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "ImportDETracked24LetterboxableHighVolume"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "ImportDETracked24SignatureHighVolumeAGE"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "ImportDETracked24SignatureStandardAGE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "ImportDETracked48"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined < 40.94in"], "human_readable": + null, "max_weight": 1058.2, "name": "ImportDETracked48HighVolume"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], + "human_readable": null, "max_weight": 35.27, "name": "ImportDETracked48Letterboxable"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "ImportDETracked48LetterboxableHighVolume"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "ImportDETrackedReturns24"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined < 40.94in"], "human_readable": + null, "max_weight": 705.47, "name": "ImportDETrackedReturns48"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in x 0.98in"], + "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterCountryPricedPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterCountryPricedPriorityETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterCountrySortPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterMaxSortPriorityService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterMaxSortResidueStandard"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterMaxSortStandardService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterSemiTracked"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterZeroSortPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterZeroSortPriorityMachine"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterZoneSortPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailLargeLetterZoneSortPriorityMachine"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessMailLetterMaxSortResidueStandard"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessMailLettersMaxSortStandard"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessMailLettersZeroSortPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessMailLettersZoneSortPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailSignedCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailSignedExtraCompensationCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessMailSignedHighVolCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailSignedZoneSort"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessMailTrackedHighVolCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedHighVolExtraCompCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedLargeLetterCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedSignedCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessMailTrackedSignedHighVolCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedSignedHighVolExtraCompCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedSignedLargeLetterCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedSignedZoneSort"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessMailTrackedZoneSort"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessPCTrackedSignedLargeLetterHVExtraCompCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 1.18in"], "human_readable": null, "max_weight": 70.55, "name": "InternationalBusinessParcelPriorityCountryPricedBoxable"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 1.18in"], "human_readable": null, "max_weight": 70.55, "name": "InternationalBusinessParcelPriorityCountryPricedBoxableDDP"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelTrackedCountryPriced"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in x 1.18in"], + "human_readable": null, "max_weight": 70.55, "name": "InternationalBusinessParcelTrackedCountryPricedBoxable"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 1.18in"], "human_readable": null, "max_weight": 70.55, "name": "InternationalBusinessParcelTrackedCountryPricedBoxableDDP"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 1.18in"], "human_readable": null, "max_weight": 70.55, "name": "InternationalBusinessParcelTrackedCountryPricedBoxableExtraComp"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcels"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 388.01, "name": "InternationalBusinessParcelsPrintDirectPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 388.01, "name": "InternationalBusinessParcelsPrintDirectStandard"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": + "InternationalBusinessParcelsSignedCountryPriced"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": "InternationalBusinessParcelsSignedExtraCompensationCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsSignedExtraCompensationZoneSort"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsSignedZoneSort"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": + "InternationalBusinessParcelsTrackedCountryPriced"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": "InternationalBusinessParcelsTrackedCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsTrackedDirectIrelandCountry"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsTrackedExtraCompCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsTrackedExtraCompZoneSort"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": + "InternationalBusinessParcelsTrackedSignedCountryPriced"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": "InternationalBusinessParcelsTrackedSignedCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsTrackedSignedDDP"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": + "InternationalBusinessParcelsTrackedSignedExtraCompensationCountryPriced"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsTrackedSignedExtraCompensationZoneSort"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessParcelsTrackedSignedZoneSort"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": + "InternationalBusinessParcelsTrackedZoneSort"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "InternationalBusinessParcelsZeroSortPriority"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "InternationalBusinessParcelsZeroSortPriorityETOE"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": + "InternationalBusinessParcelsZoneSortPriorityService"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["15.0in x 12.01in x 0.98in"], "human_readable": + null, "max_weight": 17.64, "name": "InternationalBusinessPersonalCorrespondenceLargeLetterCountrySortPriorityETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessPersonalCorrespondenceLetterPriorityUntracked"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessPersonalCorrespondenceLetterPriorityUntrackedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessPersonalCorrespondenceLetterTrackedHighVolCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessPersonalCorrespondenceLetterTrackedSignedHighVolCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessPersonalCorrespondenceMaxSortLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessPersonalCorrespondenceMaxSortResidueLargeLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessPersonalCorrespondenceMaxSortResidueLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessPersonalCorrespondenceSignedLargeLetterExtraCompensationCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["9.65in x 6.5in + x 0.2in"], "human_readable": null, "max_weight": 3.53, "name": "InternationalBusinessPersonalCorrespondenceSignedLetterHighVolCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["15.0in x 12.01in + x 0.98in"], "human_readable": null, "max_weight": 17.64, "name": "InternationalBusinessPersonalCorrespondenceTrackedLargeLetterHighVolExtraCompCountryPricedETOE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["23.62in x + 23.62in x 23.62in, Combined < 35.43in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalBusinessPrintedMatterPacket"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "InternationalBusinessTrackedExpressNPC"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalEconomyOnAccount"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": "InternationalSignedOnAccount"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalSignedOnAccountExtraComp"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": "InternationalStandardOnAccount"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalTrackedOnAccount"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 176.37, "name": "InternationalTrackedOnAccountExtraComp"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "InternationalTrackedParcels30kg"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "InternationalTrackedParcels30kgCPrio"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "InternationalTrackedParcels30kgETOEC"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "InternationalTrackedParcels30kgETOEE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "InternationalTrackedParcels30kgExtraComp"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "InternationalTrackedParcels30kgExtraCompETOEC"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "InternationalTrackedParcels30kgExtraCompETOEE"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 23.62in x 23.62in, + Combined < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": + "InternationalTrackedParcels30kgXCompCPrio"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 23.62in x 23.62in, Combined < 40.94in"], "human_readable": + null, "max_weight": 176.37, "name": "InternationalTrackedSignedOnAccount"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 23.62in x 23.62in, Combined < 40.94in"], "human_readable": null, "max_weight": + 176.37, "name": "InternationalTrackedSignedOnAccountExtraComp"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, + Combined < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": + "ParcelpostFlatRateAnnual"}, {"carrier": "royalmailv3", "description": null, + "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": null, "max_weight": + 26.46, "name": "RM24LargeLetterAnnualFlatRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": + null, "max_weight": 26.46, "name": "RM24PresortedLargeLetterAnnualFlatRate"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "RM24PresortedParcelsAnnualFlatRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": + null, "max_weight": 26.46, "name": "RM48LargeLetterAnnualFlatRate"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], + "human_readable": null, "max_weight": 26.46, "name": "RM48PresortedLargeLetterAnnualFlatRate"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "RM48PresortedParcelsAnnualFlatRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["24.02in x 18.11in x 18.11in"], "human_readable": + null, "max_weight": 705.47, "name": "RoyalMail1stClass"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "RoyalMail1stClassLettersDailyRateservice"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["24.02in x + 18.11in x 18.11in"], "human_readable": null, "max_weight": 705.47, "name": + "RoyalMail1stClassSignedFor"}, {"carrier": "royalmailv3", "description": null, + "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": null, "max_weight": + 26.46, "name": "RoyalMail24LargeLetterDailyRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": + null, "max_weight": 26.46, "name": "RoyalMail24LargeLetterFlatRate"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], + "human_readable": null, "max_weight": 26.46, "name": "RoyalMail24LargeLetterFlatRateService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "RoyalMail24PacketpostFlatRateService"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "RoyalMail24ParcelDailyRateService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "RoyalMail24ParcelSort8DailyRateService"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "RoyalMail24ParcelSort8FlatRateService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "RoyalMail24ParcelsDailyRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "RoyalMail24ParcelsFlatRate"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 26.46, "name": "RoyalMail24PresortedLargeLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "RoyalMail24PresortedParcels"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": + null, "max_weight": 26.46, "name": "RoyalMail24SORT8LargeLetterAnnualFlatRate"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "RoyalMail24SORT8ParcelsAnnualFlatRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["24.02in x 18.11in x 18.11in"], "human_readable": + null, "max_weight": 705.47, "name": "RoyalMail2ndClass"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 35.27, "name": "RoyalMail2ndClassLettersDailyRateservice"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["24.02in x + 18.11in x 18.11in"], "human_readable": null, "max_weight": 705.47, "name": + "RoyalMail2ndClassSignedFor"}, {"carrier": "royalmailv3", "description": null, + "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": null, "max_weight": + 26.46, "name": "RoyalMail48LargeLetterDailyRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": + null, "max_weight": 26.46, "name": "RoyalMail48LargeLetterFlatRate"}, {"carrier": + "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], + "human_readable": null, "max_weight": 26.46, "name": "RoyalMail48LargeLetterFlatRateService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "RoyalMail48PacketpostFlatRateService"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "RoyalMail48ParcelDailyRateService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "RoyalMail48ParcelSort8DailyRateService"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "RoyalMail48ParcelSort8FlatRateService"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "RoyalMail48ParcelsDailyRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "RoyalMail48ParcelsFlatRate"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 26.46, "name": "RoyalMail48PresortedLargeLetter"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "RoyalMail48PresortedParcels"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["13.9in x 9.84in x 0.98in"], "human_readable": + null, "max_weight": 26.46, "name": "RoyalMail48SORT8LargeLetterAnnualFlatRate"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "RoyalMail48Sort8ParcelsAnnualFlatRate"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteed1000"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteed2500"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteed750"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteedAGE1000"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedAGE2500"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteedAGE750"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedBy1PM1000"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteedBy1PM2500"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedBy1PM750"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteedBy1PMAGE1000"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedBy1PMAGE2500"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteedBy1PMAGE750"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedBy1PMID1000"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteedBy1PMID2500"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedBy1PMID750"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "SpecialDeliveryGuaranteedBy9AM1000"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "SpecialDeliveryGuaranteedBy9AM2500"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "SpecialDeliveryGuaranteedBy9AM750"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "SpecialDeliveryGuaranteedBy9AMAGE1000"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "SpecialDeliveryGuaranteedBy9AMAGE2500"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "SpecialDeliveryGuaranteedBy9AMAGE750"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "SpecialDeliveryGuaranteedBy9AMID1000"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 70.55, "name": "SpecialDeliveryGuaranteedBy9AMID2500"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 70.55, "name": "SpecialDeliveryGuaranteedBy9AMID750"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedID1000"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "SpecialDeliveryGuaranteedID2500"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 705.47, "name": "SpecialDeliveryGuaranteedID750"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "Tracked24"}, {"carrier": "royalmailv3", "description": null, + "dimensions": ["35.43in x 18.11in x 18.11in, Combined < 40.94in"], "human_readable": + null, "max_weight": 1058.2, "name": "Tracked24HighVolume"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "Tracked24HighVolumeSignatureAGE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "Tracked24SignatureAGE"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined < 40.94in"], "human_readable": + null, "max_weight": 1058.2, "name": "Tracked48"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "Tracked48HighVolume"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 1058.2, "name": "Tracked48HighVolumeSignatureAGE"}, {"carrier": "royalmailv3", + "description": null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined + < 40.94in"], "human_readable": null, "max_weight": 1058.2, "name": "Tracked48SignatureAGE"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "TrackedLetterBoxable24"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "TrackedLetterBoxable24HighVolume"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "TrackedLetterBoxable48"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["13.9in x 9.84in + x 0.98in"], "human_readable": null, "max_weight": 35.27, "name": "TrackedLetterBoxable48HighVolume"}, + {"carrier": "royalmailv3", "description": null, "dimensions": ["35.43in x + 18.11in x 18.11in, Combined < 40.94in"], "human_readable": null, "max_weight": + 705.47, "name": "TrackedReturns24"}, {"carrier": "royalmailv3", "description": + null, "dimensions": ["35.43in x 18.11in x 18.11in, Combined < 40.94in"], "human_readable": + null, "max_weight": 705.47, "name": "TrackedReturns48"}], "shipment_options": + [], "supported_features": [{"carrier": "royalmailv3", "description": null, + "name": "commercial_invoices", "supported": null}, {"carrier": "royalmailv3", + "description": null, "name": "labels", "supported": null}, {"carrier": "royalmailv3", + "description": null, "name": "rating", "supported": true}, {"carrier": "royalmailv3", + "description": null, "name": "refunds", "supported": null}, {"carrier": "royalmailv3", + "description": null, "name": "returns", "supported": null}, {"carrier": "royalmailv3", + "description": null, "name": "scanforms", "supported": null}, {"carrier": + "royalmailv3", "description": null, "name": "test_environment", "supported": + null}]}, {"human_readable": "SEKO OmniParcel", "name": "sekoomniparcel", "predefined_packages": [{"carrier": "sekoomniparcel", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "Bag"}, {"carrier": "sekoomniparcel", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": @@ -1563,63 +2528,114 @@ interactions: [], "service_levels": [{"carrier": "sendle", "description": null, "dimensions": [], "human_readable": "Standard", "max_weight": null, "name": "Standard"}, {"carrier": "sendle", "description": null, "dimensions": [], "human_readable": - "Express", "max_weight": null, "name": "Express"}], "shipment_options": [], - "supported_features": []}, {"human_readable": "SF Express", "name": "sfexpress", - "predefined_packages": [], "service_levels": [{"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalStandardExpressDoc"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalStandardExpressParcel"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalEconomyExpressPilot"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalEconomyExpressDoc"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "InternationalEconomyExpressParcel"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "DomesticExpress"}, {"carrier": "sfexpress", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "DomesticStandard"}, + "Express", "max_weight": null, "name": "Express"}, {"carrier": "sendle", "description": + null, "dimensions": [], "human_readable": "Saver", "max_weight": null, "name": + "Saver"}, {"carrier": "sendle", "description": null, "dimensions": [], "human_readable": + "Two-Day", "max_weight": null, "name": "Two-Day"}, {"carrier": "sendle", "description": + null, "dimensions": [], "human_readable": "Three-Day", "max_weight": null, + "name": "Three-Day"}], "shipment_options": [], "supported_features": []}, + {"human_readable": "SF Express", "name": "sfexpress", "predefined_packages": + [], "service_levels": [{"carrier": "sfexpress", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "InternationalStandardExpressDoc"}, {"carrier": "sfexpress", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "DomesticIntraCity"}, {"carrier": "sfexpress", + null, "max_weight": null, "name": "InternationalStandardExpressParcel"}, {"carrier": + "sfexpress", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "InternationalEconomyExpressPilot"}, {"carrier": + "sfexpress", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "InternationalEconomyExpressDoc"}, {"carrier": + "sfexpress", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "InternationalEconomyExpressParcel"}, {"carrier": + "sfexpress", "description": null, "dimensions": [], "human_readable": null, + "max_weight": null, "name": "DomesticExpress"}, {"carrier": "sfexpress", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "DomesticStandard"}, {"carrier": "sfexpress", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "DomesticIntraCity"}, + {"carrier": "sfexpress", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "StandardExpress"}, {"carrier": "sfexpress", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "StandardExpress"}, {"carrier": "sfexpress", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "EconomyExpress"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "SmartKargo", "name": "smartkargo", "predefined_packages": [], "service_levels": - [{"carrier": "smartkargo", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "EPR"}], "shipment_options": [], "supported_features": - []}, {"human_readable": "Sonic", "name": "sonic", "predefined_packages": [], - "service_levels": [{"carrier": "sonic", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "NEXTDAY"}, {"carrier": + null, "name": "EconomyExpress"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "SmartKargo", "name": "smartkargo", "predefined_packages": + [], "service_levels": [{"carrier": "smartkargo", "description": "Expedited + Product, 2 business days", "dimensions": null, "human_readable": "Expedited + Product, 2 business days", "max_weight": null, "name": "EPR"}, {"carrier": + "smartkargo", "description": "eCommerce Express", "dimensions": null, "human_readable": + "eCommerce Express", "max_weight": null, "name": "EXP"}, {"carrier": "smartkargo", + "description": "eCommerce Standard", "dimensions": null, "human_readable": + "eCommerce Standard", "max_weight": null, "name": "EST"}, {"carrier": "smartkargo", + "description": "eCommerce Postal Standard", "dimensions": null, "human_readable": + "eCommerce Postal Standard", "max_weight": null, "name": "EPS"}], "shipment_options": + [], "supported_features": [{"carrier": "smartkargo", "description": null, + "name": "labels", "supported": null}, {"carrier": "smartkargo", "description": + null, "name": "rating", "supported": true}, {"carrier": "smartkargo", "description": + null, "name": "refunds", "supported": null}, {"carrier": "smartkargo", "description": + null, "name": "test_environment", "supported": null}]}, {"human_readable": + "Sonic", "name": "sonic", "predefined_packages": [], "service_levels": [{"carrier": "sonic", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "SAMEDAY"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "Spee-Dee", "name": "speedee", "predefined_packages": [], - "service_levels": [{"carrier": "speedee", "description": null, "dimensions": + null, "name": "SAMEDAY"}], "shipment_options": [], "supported_features": [{"carrier": + "sonic", "description": null, "name": "bill_on_delivery", "supported": true}, + {"carrier": "sonic", "description": null, "name": "bill_on_label_purchase", + "supported": false}, {"carrier": "sonic", "description": null, "name": "bill_on_manifest", + "supported": false}, {"carrier": "sonic", "description": null, "name": "bill_on_scan", + "supported": false}, {"carrier": "sonic", "description": null, "name": "commercial_invoices", + "supported": false}, {"carrier": "sonic", "description": null, "name": "labels", + "supported": true}, {"carrier": "sonic", "description": null, "name": "orders", + "supported": false}, {"carrier": "sonic", "description": null, "name": "pickups", + "supported": false}, {"carrier": "sonic", "description": null, "name": "rating", + "supported": true}, {"carrier": "sonic", "description": null, "name": "refunds", + "supported": true}, {"carrier": "sonic", "description": null, "name": "returns", + "supported": false}, {"carrier": "sonic", "description": null, "name": "scanforms", + "supported": false}, {"carrier": "sonic", "description": null, "name": "sort_codes", + "supported": false}, {"carrier": "sonic", "description": null, "name": "test_environment", + "supported": false}]}, {"human_readable": "Spee-Dee", "name": "speedee", "predefined_packages": + [], "service_levels": [{"carrier": "speedee", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "SpeeDeeDelivery"}], - "shipment_options": [], "supported_features": []}, {"human_readable": "Swyft", - "name": "swyft", "predefined_packages": [], "service_levels": [{"carrier": - "swyft", "description": null, "dimensions": [], "human_readable": null, "max_weight": + "shipment_options": [], "supported_features": []}, {"human_readable": "SpeedX", + "name": "speedx", "predefined_packages": [], "service_levels": [{"carrier": + "speedx", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "DGD"}, {"carrier": "speedx", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "D2A"}, {"carrier": + "speedx", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "DZS"}], "shipment_options": [], "supported_features": [{"carrier": + "speedx", "description": null, "name": "labels", "supported": null}, {"carrier": + "speedx", "description": null, "name": "rating", "supported": true}, {"carrier": + "speedx", "description": null, "name": "refunds", "supported": null}]}, {"human_readable": + "Sway", "name": "sway", "predefined_packages": [], "service_levels": [{"carrier": + "sway", "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "SAMEDAY"}, {"carrier": "sway", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "EXPEDITED"}], "shipment_options": + [], "supported_features": [{"carrier": "sway", "description": null, "name": + "labels", "supported": null}, {"carrier": "sway", "description": null, "name": + "rating", "supported": true}, {"carrier": "sway", "description": null, "name": + "refunds", "supported": null}, {"carrier": "sway", "description": null, "name": + "test_environment", "supported": null}]}, {"human_readable": "Swyft", "name": + "swyft", "predefined_packages": [], "service_levels": [{"carrier": "swyft", + "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "NEXTDAY"}, {"carrier": "swyft", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "SAMEDAY"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "TForce Logistics", "name": - "tforce", "predefined_packages": [], "service_levels": [{"carrier": "tforce", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "NextDay"}, {"carrier": "tforce", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Return"}], "shipment_options": - [], "supported_features": []}, {"human_readable": "Toll", "name": "toll", - "predefined_packages": [], "service_levels": [{"carrier": "toll", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "IPEC Direct"}, {"carrier": "toll", "description": null, "dimensions": [], - "human_readable": null, "max_weight": null, "name": "IPEC Fashion"}, {"carrier": - "toll", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "IPEC Local"}, {"carrier": "toll", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "IPEC Priority"}, - {"carrier": "toll", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "IPEC Road Express"}, {"carrier": "toll", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "IPEC Sensitive"}, {"carrier": "toll", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "IPEC - VicEXP"}], "shipment_options": [], "supported_features": []}, {"human_readable": + [], "supported_features": [{"carrier": "swyft", "description": null, "name": + "bill_on_delivery", "supported": true}, {"carrier": "swyft", "description": + null, "name": "bill_on_label_purchase", "supported": false}, {"carrier": "swyft", + "description": null, "name": "bill_on_manifest", "supported": false}, {"carrier": + "swyft", "description": null, "name": "bill_on_scan", "supported": false}, + {"carrier": "swyft", "description": null, "name": "commercial_invoices", "supported": + false}, {"carrier": "swyft", "description": null, "name": "labels", "supported": + false}, {"carrier": "swyft", "description": null, "name": "orders", "supported": + false}, {"carrier": "swyft", "description": null, "name": "pickups", "supported": + false}, {"carrier": "swyft", "description": null, "name": "rating", "supported": + true}, {"carrier": "swyft", "description": null, "name": "refunds", "supported": + true}, {"carrier": "swyft", "description": null, "name": "returns", "supported": + false}, {"carrier": "swyft", "description": null, "name": "scanforms", "supported": + false}, {"carrier": "swyft", "description": null, "name": "sort_codes", "supported": + false}, {"carrier": "swyft", "description": null, "name": "test_environment", + "supported": false}]}, {"human_readable": "TCC", "name": "tcc", "predefined_packages": + [], "service_levels": [{"carrier": "tcc", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "Smith Drug Same Day"}], + "shipment_options": [], "supported_features": []}, {"human_readable": "TForce + Logistics", "name": "tforce", "predefined_packages": [], "service_levels": + [{"carrier": "tforce", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "NextDay"}, {"carrier": "tforce", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "Return"}], "shipment_options": [], "supported_features": []}, {"human_readable": "UDS", "name": "uds", "predefined_packages": [], "service_levels": [{"carrier": "uds", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "DeliveryService"}], "shipment_options": [], "supported_features": @@ -1671,35 +2687,47 @@ interactions: [], "service_levels": [], "shipment_options": [], "supported_features": []}, {"human_readable": "UPS Mail Innovations", "name": "upsmailinnovations", "predefined_packages": [], "service_levels": [{"carrier": "upsmailinnovations", "description": null, - "dimensions": [], "human_readable": null, "max_weight": null, "name": "EconomyMailInnovations"}, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "BPMFlats"}, + {"carrier": "upsmailinnovations", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "BPMParcels"}, {"carrier": "upsmailinnovations", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "EconomyMailInnovations"}, {"carrier": "upsmailinnovations", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "ExpeditedMailInnovations"}, {"carrier": "upsmailinnovations", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "First"}, {"carrier": "upsmailinnovations", "description": null, + "dimensions": [], "human_readable": null, "max_weight": null, "name": "MarketingParcels"}, + {"carrier": "upsmailinnovations", "description": null, "dimensions": [], "human_readable": + null, "max_weight": null, "name": "MediaMail"}, {"carrier": "upsmailinnovations", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "ParcelSelect"}, {"carrier": "upsmailinnovations", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "ParcelSelectLightweight-Irreg"}, {"carrier": "upsmailinnovations", "description": + null, "dimensions": [], "human_readable": null, "max_weight": null, "name": + "Priority"}, {"carrier": "upsmailinnovations", "description": null, "dimensions": + [], "human_readable": null, "max_weight": null, "name": "PriorityMailInnovations"}, {"carrier": "upsmailinnovations", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "ExpeditedMailInnovations"}, {"carrier": - "upsmailinnovations", "description": null, "dimensions": [], "human_readable": - null, "max_weight": null, "name": "First"}, {"carrier": "upsmailinnovations", - "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "Priority"}, {"carrier": "upsmailinnovations", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "PriorityMailInnovations"}, {"carrier": "upsmailinnovations", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "SingleReturns"}], "shipment_options": [], "supported_features": []}, {"human_readable": - "USPS", "name": "usps", "predefined_packages": [{"carrier": "usps", "description": - null, "dimensions": ["6in x 4.5in x 0.016in"], "human_readable": null, "max_weight": - null, "name": "Card"}, {"carrier": "usps", "description": null, "dimensions": - ["11.5in x 6.125in x 0.25in"], "human_readable": null, "max_weight": null, - "name": "Letter"}, {"carrier": "usps", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "Flat"}, {"carrier": - "usps", "description": null, "dimensions": ["12.5in x 9.5in"], "human_readable": - null, "max_weight": null, "name": "FlatRateEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["15in x 9.5in"], "human_readable": null, - "max_weight": null, "name": "FlatRateLegalEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["12.5in x 9.5in"], "human_readable": null, - "max_weight": null, "name": "FlatRatePaddedEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["10in x 5in", "12.5in x 9.5in"], "human_readable": - null, "max_weight": null, "name": "FlatRateWindowEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["12.5in x 9.5in"], "human_readable": null, - "max_weight": null, "name": "FlatRateCardboardEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["10in x 6in"], "human_readable": null, - "max_weight": null, "name": "SmallFlatRateEnvelope"}, {"carrier": "usps", + null, "max_weight": null, "name": "SingleReturns"}, {"carrier": "upsmailinnovations", + "description": null, "dimensions": [], "human_readable": null, "max_weight": + null, "name": "StandardFlats"}], "shipment_options": [], "supported_features": + []}, {"human_readable": "USPS", "name": "usps", "predefined_packages": [{"carrier": + "usps", "description": null, "dimensions": ["6in x 4.5in x 0.016in"], "human_readable": + null, "max_weight": null, "name": "Card"}, {"carrier": "usps", "description": + null, "dimensions": ["11.5in x 6.125in x 0.25in"], "human_readable": null, + "max_weight": null, "name": "Letter"}, {"carrier": "usps", "description": + null, "dimensions": ["11.5in x 6.125in x 0.75in"], "human_readable": null, + "max_weight": null, "name": "Flat"}, {"carrier": "usps", "description": null, + "dimensions": ["12.5in x 9.5in"], "human_readable": null, "max_weight": null, + "name": "FlatRateEnvelope"}, {"carrier": "usps", "description": null, "dimensions": + ["15in x 9.5in"], "human_readable": null, "max_weight": null, "name": "FlatRateLegalEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["12.5in x 9.5in"], + "human_readable": null, "max_weight": null, "name": "FlatRatePaddedEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["10in x 5in", "12.5in + x 9.5in"], "human_readable": null, "max_weight": null, "name": "FlatRateWindowEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["12.5in x 9.5in"], + "human_readable": null, "max_weight": null, "name": "FlatRateCardboardEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["10in x 6in"], "human_readable": + null, "max_weight": null, "name": "SmallFlatRateEnvelope"}, {"carrier": "usps", "description": null, "dimensions": ["Varies based on service level"], "human_readable": null, "max_weight": null, "name": "Parcel"}, {"carrier": "usps", "description": null, "dimensions": ["Varies based on service level"], "human_readable": null, @@ -1720,61 +2748,66 @@ interactions: "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "HalfTrayBox"}, {"carrier": "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "PMODSack"}], "service_levels": - [{"carrier": "usps", "description": "1-5 business days", "dimensions": ["22in - x 18in x 15in"], "human_readable": null, "max_weight": 13.0, "name": "First"}, - {"carrier": "usps", "description": "1-3 business days", "dimensions": ["Combined - Length and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, - "name": "Priority"}, {"carrier": "usps", "description": "1-2 days", "dimensions": - ["Combined Length and Girth < 108in"], "human_readable": null, "max_weight": - 1120.0, "name": "Express"}, {"carrier": "usps", "description": "2-8 business - days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "ParcelSelect"}, {"carrier": "usps", "description": + [{"carrier": "usps", "description": "1-5 business days", "dimensions": ["Cards, + Letters and Flats only (no Parcels)", "See Predefined Packages (Card, Letter, + Flat) for details"], "human_readable": "First-Class Mail\u00ae", "max_weight": + 13.0, "name": "First"}, {"carrier": "usps", "description": "1-3 business days", + "dimensions": ["Combined Length and Girth < 108in"], "human_readable": "Priority + Mail\u00ae", "max_weight": 1120.0, "name": "Priority"}, {"carrier": "usps", + "description": "1-2 days", "dimensions": ["Combined Length and Girth < 108in"], + "human_readable": "Priority Mail Express\u00ae", "max_weight": 1120.0, "name": + "Express"}, {"carrier": "usps", "description": "2-5 days", "dimensions": ["Combined + Length and Girth < 130in"], "human_readable": "USPS Ground Advantage\u00ae", + "max_weight": 70.0, "name": "GroundAdvantage"}, {"carrier": "usps", "description": "2-8 business days", "dimensions": ["Combined Length and Girth < 108in"], - "human_readable": null, "max_weight": 1120.0, "name": "LibraryMail"}, {"carrier": - "usps", "description": "2-8 business days", "dimensions": ["Combined Length - and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, "name": - "MediaMail"}, {"carrier": "usps", "description": null, "dimensions": ["Must - be rectangular, otherwise an additional charge may apply."], "human_readable": - null, "max_weight": 15.994, "name": "FirstClassMailInternational"}, {"carrier": - "usps", "description": "7-21 days", "dimensions": ["Packages (Other Than Rolls): - Combined Length and Girth < 108in", "Rolls (Tubes): Length: min 4in; max 36 - in. Length plus twice the diameter (combined): min 6.75 in; max 42in.", "Some - countries have specific prohibitions and restrictions"], "human_readable": - null, "max_weight": 64.0, "name": "FirstClassPackageInternationalService"}, - {"carrier": "usps", "description": "6-10 business days", "dimensions": ["Combined - Length and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, + "human_readable": "Library Mail\u00ae", "max_weight": 1120.0, "name": "LibraryMail"}, + {"carrier": "usps", "description": "2-8 business days", "dimensions": ["Combined + Length and Girth < 108in"], "human_readable": "Media Mail\u00ae", "max_weight": + 1120.0, "name": "MediaMail"}, {"carrier": "usps", "description": null, "dimensions": + ["Must be rectangular, otherwise an additional charge may apply."], "human_readable": + "First-Class Mail International\u00ae", "max_weight": 15.994, "name": "FirstClassMailInternational"}, + {"carrier": "usps", "description": "7-21 days", "dimensions": ["Packages (Other + Than Rolls): Combined Length and Girth < 108in", "Rolls (Tubes): Length: min + 4in; max 36 in. Length plus twice the diameter (combined): min 6.75 in; max + 42in.", "Some countries have specific prohibitions and restrictions"], "human_readable": + "First-Class Package International Service\u00ae", "max_weight": 64.0, "name": + "FirstClassPackageInternationalService"}, {"carrier": "usps", "description": + "6-10 business days", "dimensions": ["Combined Length and Girth < 108in"], + "human_readable": "Priority Mail International\u00ae", "max_weight": 1120.0, "name": "PriorityMailInternational"}, {"carrier": "usps", "description": "3-5 business days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "ExpressMailInternational"}], "shipment_options": - [], "supported_features": [{"carrier": "usps", "description": null, "name": - "bill_on_delivery", "supported": null}, {"carrier": "usps", "description": - null, "name": "bill_on_label_purchase", "supported": null}, {"carrier": "usps", - "description": null, "name": "commercial_invoices", "supported": null}, {"carrier": - "usps", "description": null, "name": "delivers_to_po_box", "supported": null}, - {"carrier": "usps", "description": null, "name": "labels", "supported": null}, - {"carrier": "usps", "description": null, "name": "pickups", "supported": null}, - {"carrier": "usps", "description": null, "name": "rating", "supported": false}, - {"carrier": "usps", "description": null, "name": "refunds", "supported": null}, - {"carrier": "usps", "description": null, "name": "returns", "supported": null}, - {"carrier": "usps", "description": null, "name": "scanforms", "supported": - null}, {"carrier": "usps", "description": null, "name": "test_environment", - "supported": null}, {"carrier": "usps", "description": null, "name": "tracking", - "supported": false}]}, {"human_readable": "Veho", "name": "veho", "predefined_packages": + "Priority Mail Express International\u00ae", "max_weight": 1120.0, "name": + "ExpressMailInternational"}], "shipment_options": [], "supported_features": + [{"carrier": "usps", "description": null, "name": "bill_on_delivery", "supported": + null}, {"carrier": "usps", "description": null, "name": "bill_on_label_purchase", + "supported": null}, {"carrier": "usps", "description": null, "name": "commercial_invoices", + "supported": null}, {"carrier": "usps", "description": null, "name": "delivers_to_po_box", + "supported": null}, {"carrier": "usps", "description": null, "name": "labels", + "supported": null}, {"carrier": "usps", "description": null, "name": "pickups", + "supported": null}, {"carrier": "usps", "description": null, "name": "rating", + "supported": true}, {"carrier": "usps", "description": null, "name": "refunds", + "supported": null}, {"carrier": "usps", "description": null, "name": "returns", + "supported": null}, {"carrier": "usps", "description": null, "name": "scanforms", + "supported": null}, {"carrier": "usps", "description": null, "name": "test_environment", + "supported": null}]}, {"human_readable": "Veho", "name": "veho", "predefined_packages": [], "service_levels": [{"carrier": "veho", "description": null, "dimensions": - [], "human_readable": null, "max_weight": null, "name": "nextDay"}, {"carrier": - "veho", "description": null, "dimensions": [], "human_readable": null, "max_weight": - null, "name": "sameDay"}], "shipment_options": [], "supported_features": []}, - {"human_readable": "Yanwen", "name": "yanwen", "predefined_packages": [], - "service_levels": [], "shipment_options": [], "supported_features": []}]}' + null, "human_readable": "Next Day", "max_weight": 800.0, "name": "nextDay"}, + {"carrier": "veho", "description": null, "dimensions": null, "human_readable": + "Same Day", "max_weight": 800.0, "name": "sameDay"}], "shipment_options": + [], "supported_features": [{"carrier": "veho", "description": null, "name": + "labels", "supported": null}, {"carrier": "veho", "description": null, "name": + "pickups", "supported": null}, {"carrier": "veho", "description": null, "name": + "rating", "supported": true}, {"carrier": "veho", "description": null, "name": + "test_environment", "supported": null}]}, {"human_readable": "Yanwen", "name": + "yanwen", "predefined_packages": [], "service_levels": [], "shipment_options": + [], "supported_features": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '130177' + - '211245' content-type: - application/json; charset=utf-8 - etag: - - W/"c2966a8b0aa68f29f2cfb0f6930cbabf" expires: - '0' pragma: @@ -1792,20 +2825,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 37beff0364777761e788ee020018f3d6 + - 8e8eb62b67c9fbece2b97a9100187312 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.181185' + - '0.073021' x-version-label: - - easypost-202305311544-49bde6df69-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_retrieve_carrier_metadata_with_filters.yaml b/tests/cassettes/test_retrieve_carrier_metadata_with_filters.yaml index 3e75d59a..c6568ebb 100644 --- a/tests/cassettes/test_retrieve_carrier_metadata_with_filters.yaml +++ b/tests/cassettes/test_retrieve_carrier_metadata_with_filters.yaml @@ -21,19 +21,19 @@ interactions: "human_readable": null, "max_weight": null, "name": "Card"}, {"carrier": "usps", "description": null, "dimensions": ["11.5in x 6.125in x 0.25in"], "human_readable": null, "max_weight": null, "name": "Letter"}, {"carrier": "usps", "description": - null, "dimensions": [], "human_readable": null, "max_weight": null, "name": - "Flat"}, {"carrier": "usps", "description": null, "dimensions": ["12.5in x - 9.5in"], "human_readable": null, "max_weight": null, "name": "FlatRateEnvelope"}, - {"carrier": "usps", "description": null, "dimensions": ["15in x 9.5in"], "human_readable": - null, "max_weight": null, "name": "FlatRateLegalEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["12.5in x 9.5in"], "human_readable": null, - "max_weight": null, "name": "FlatRatePaddedEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["10in x 5in", "12.5in x 9.5in"], "human_readable": - null, "max_weight": null, "name": "FlatRateWindowEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["12.5in x 9.5in"], "human_readable": null, - "max_weight": null, "name": "FlatRateCardboardEnvelope"}, {"carrier": "usps", - "description": null, "dimensions": ["10in x 6in"], "human_readable": null, - "max_weight": null, "name": "SmallFlatRateEnvelope"}, {"carrier": "usps", + null, "dimensions": ["11.5in x 6.125in x 0.75in"], "human_readable": null, + "max_weight": null, "name": "Flat"}, {"carrier": "usps", "description": null, + "dimensions": ["12.5in x 9.5in"], "human_readable": null, "max_weight": null, + "name": "FlatRateEnvelope"}, {"carrier": "usps", "description": null, "dimensions": + ["15in x 9.5in"], "human_readable": null, "max_weight": null, "name": "FlatRateLegalEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["12.5in x 9.5in"], + "human_readable": null, "max_weight": null, "name": "FlatRatePaddedEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["10in x 5in", "12.5in + x 9.5in"], "human_readable": null, "max_weight": null, "name": "FlatRateWindowEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["12.5in x 9.5in"], + "human_readable": null, "max_weight": null, "name": "FlatRateCardboardEnvelope"}, + {"carrier": "usps", "description": null, "dimensions": ["10in x 6in"], "human_readable": + null, "max_weight": null, "name": "SmallFlatRateEnvelope"}, {"carrier": "usps", "description": null, "dimensions": ["Varies based on service level"], "human_readable": null, "max_weight": null, "name": "Parcel"}, {"carrier": "usps", "description": null, "dimensions": ["Varies based on service level"], "human_readable": null, @@ -54,41 +54,43 @@ interactions: "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "HalfTrayBox"}, {"carrier": "usps", "description": null, "dimensions": [], "human_readable": null, "max_weight": null, "name": "PMODSack"}], "service_levels": - [{"carrier": "usps", "description": "1-5 business days", "dimensions": ["22in - x 18in x 15in"], "human_readable": null, "max_weight": 13.0, "name": "First"}, - {"carrier": "usps", "description": "1-3 business days", "dimensions": ["Combined - Length and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, - "name": "Priority"}, {"carrier": "usps", "description": "1-2 days", "dimensions": - ["Combined Length and Girth < 108in"], "human_readable": null, "max_weight": - 1120.0, "name": "Express"}, {"carrier": "usps", "description": "2-8 business - days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "ParcelSelect"}, {"carrier": "usps", "description": + [{"carrier": "usps", "description": "1-5 business days", "dimensions": ["Cards, + Letters and Flats only (no Parcels)", "See Predefined Packages (Card, Letter, + Flat) for details"], "human_readable": "First-Class Mail\u00ae", "max_weight": + 13.0, "name": "First"}, {"carrier": "usps", "description": "1-3 business days", + "dimensions": ["Combined Length and Girth < 108in"], "human_readable": "Priority + Mail\u00ae", "max_weight": 1120.0, "name": "Priority"}, {"carrier": "usps", + "description": "1-2 days", "dimensions": ["Combined Length and Girth < 108in"], + "human_readable": "Priority Mail Express\u00ae", "max_weight": 1120.0, "name": + "Express"}, {"carrier": "usps", "description": "2-5 days", "dimensions": ["Combined + Length and Girth < 130in"], "human_readable": "USPS Ground Advantage\u00ae", + "max_weight": 70.0, "name": "GroundAdvantage"}, {"carrier": "usps", "description": "2-8 business days", "dimensions": ["Combined Length and Girth < 108in"], - "human_readable": null, "max_weight": 1120.0, "name": "LibraryMail"}, {"carrier": - "usps", "description": "2-8 business days", "dimensions": ["Combined Length - and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, "name": - "MediaMail"}, {"carrier": "usps", "description": null, "dimensions": ["Must - be rectangular, otherwise an additional charge may apply."], "human_readable": - null, "max_weight": 15.994, "name": "FirstClassMailInternational"}, {"carrier": - "usps", "description": "7-21 days", "dimensions": ["Packages (Other Than Rolls): - Combined Length and Girth < 108in", "Rolls (Tubes): Length: min 4in; max 36 - in. Length plus twice the diameter (combined): min 6.75 in; max 42in.", "Some - countries have specific prohibitions and restrictions"], "human_readable": - null, "max_weight": 64.0, "name": "FirstClassPackageInternationalService"}, - {"carrier": "usps", "description": "6-10 business days", "dimensions": ["Combined - Length and Girth < 108in"], "human_readable": null, "max_weight": 1120.0, + "human_readable": "Library Mail\u00ae", "max_weight": 1120.0, "name": "LibraryMail"}, + {"carrier": "usps", "description": "2-8 business days", "dimensions": ["Combined + Length and Girth < 108in"], "human_readable": "Media Mail\u00ae", "max_weight": + 1120.0, "name": "MediaMail"}, {"carrier": "usps", "description": null, "dimensions": + ["Must be rectangular, otherwise an additional charge may apply."], "human_readable": + "First-Class Mail International\u00ae", "max_weight": 15.994, "name": "FirstClassMailInternational"}, + {"carrier": "usps", "description": "7-21 days", "dimensions": ["Packages (Other + Than Rolls): Combined Length and Girth < 108in", "Rolls (Tubes): Length: min + 4in; max 36 in. Length plus twice the diameter (combined): min 6.75 in; max + 42in.", "Some countries have specific prohibitions and restrictions"], "human_readable": + "First-Class Package International Service\u00ae", "max_weight": 64.0, "name": + "FirstClassPackageInternationalService"}, {"carrier": "usps", "description": + "6-10 business days", "dimensions": ["Combined Length and Girth < 108in"], + "human_readable": "Priority Mail International\u00ae", "max_weight": 1120.0, "name": "PriorityMailInternational"}, {"carrier": "usps", "description": "3-5 business days", "dimensions": ["Combined Length and Girth < 108in"], "human_readable": - null, "max_weight": 1120.0, "name": "ExpressMailInternational"}]}]}' + "Priority Mail Express International\u00ae", "max_weight": 1120.0, "name": + "ExpressMailInternational"}]}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '4706' + - '5074' content-type: - application/json; charset=utf-8 - etag: - - W/"80e36a02624b6fff828d65a412ac9604" expires: - '0' pragma: @@ -106,20 +108,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 37beff0364777761e788ee030018f421 + - 8e8eb62a67c9fbece2b97a9200187353 x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.028461' + - '0.038075' x-version-label: - - easypost-202305311544-49bde6df69-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_retrieve_estimated_delivery_date.yaml b/tests/cassettes/test_retrieve_estimated_delivery_date.yaml deleted file mode 100644 index b6c1498a..00000000 --- a/tests/cassettes/test_retrieve_estimated_delivery_date.yaml +++ /dev/null @@ -1,244 +0,0 @@ -interactions: -- request: - body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 - Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": - "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, - "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": - "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": false}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '520' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/shipments - response: - body: - string: '{"created_at": "2023-04-26T17:24:23Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-04-26T17:24:24Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_301dd00ae45711edb6c9ac1f6bc7b362", "object": "Address", "created_at": - "2023-04-26T17:24:23+00:00", "updated_at": "2023-04-26T17:24:23+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_90578957d2ec4cb9970bde9a47848294", - "object": "Parcel", "created_at": "2023-04-26T17:24:23Z", "updated_at": "2023-04-26T17:24:23Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_9ecc079d24f24ad491f4f3fe976c744b", - "object": "Rate", "created_at": "2023-04-26T17:24:24Z", "updated_at": "2023-04-26T17:24:24Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_1afa9ef87b38400fb36f536c94103626", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_61603072e1e24bc9a65babb125691d01", - "object": "Rate", "created_at": "2023-04-26T17:24:24Z", "updated_at": "2023-04-26T17:24:24Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "7.75", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_1afa9ef87b38400fb36f536c94103626", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_739ce4e66e0947b4932f8a58a33147ad", - "object": "Rate", "created_at": "2023-04-26T17:24:24Z", "updated_at": "2023-04-26T17:24:24Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.58", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_1afa9ef87b38400fb36f536c94103626", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_446b930d2aa74a44a15076a787a73f79", - "object": "Rate", "created_at": "2023-04-26T17:24:24Z", "updated_at": "2023-04-26T17:24:24Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_1afa9ef87b38400fb36f536c94103626", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_301b2d5be45711ed9d33ac1f6bc7bdc6", "object": - "Address", "created_at": "2023-04-26T17:24:23+00:00", "updated_at": "2023-04-26T17:24:23+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_301dd00ae45711edb6c9ac1f6bc7b362", - "object": "Address", "created_at": "2023-04-26T17:24:23+00:00", "updated_at": - "2023-04-26T17:24:23+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_301b2d5be45711ed9d33ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-04-26T17:24:23+00:00", "updated_at": "2023-04-26T17:24:23+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_1afa9ef87b38400fb36f536c94103626", - "object": "Shipment"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '5026' - content-type: - - application/json; charset=utf-8 - etag: - - W/"6e6b698446f9bd489232df70f9f05dff" - expires: - - '0' - location: - - /api/v2/shipments/shp_1afa9ef87b38400fb36f536c94103626 - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - e7308c8064495e47e7873cc400192f63 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb9nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq a29e4ad05c - x-runtime: - - '0.712924' - x-version-label: - - easypost-202304252326-79950b6035-master - x-xss-protection: - - 1; mode=block - status: - code: 201 - message: Created -- request: - body: null - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - authorization: - - - user-agent: - - - method: GET - uri: https://api.easypost.com/v2/shipments/shp_1afa9ef87b38400fb36f536c94103626/smartrate/delivery_date?planned_ship_date=2023-04-28 - response: - body: - string: '{"rates": [{"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": - 1, "percentile_75": 3, "percentile_85": 3, "percentile_90": 3, "percentile_95": - 3, "percentile_97": 3, "percentile_99": 5}, "easypost_estimated_delivery_date": - "2023-04-29", "planned_ship_date": "2023-04-28"}, "rate": {"carrier": "USPS", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": - "2023-04-26T17:24:24Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": - false, "delivery_days": null, "est_delivery_days": null, "id": "rate_9ecc079d24f24ad491f4f3fe976c744b", - "list_currency": "USD", "list_rate": 31.25, "mode": "test", "object": "Rate", - "rate": 31.25, "retail_currency": "USD", "retail_rate": 35.8, "service": "Express", - "shipment_id": "shp_1afa9ef87b38400fb36f536c94103626", "updated_at": "2023-04-26T17:24:24Z"}}, - {"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": 3, - "percentile_75": 3, "percentile_85": 3, "percentile_90": 3, "percentile_95": - 3, "percentile_97": 4, "percentile_99": 5}, "easypost_estimated_delivery_date": - "2023-05-01", "planned_ship_date": "2023-04-28"}, "rate": {"carrier": "USPS", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": - "2023-04-26T17:24:24Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": - false, "delivery_days": 5, "est_delivery_days": 5, "id": "rate_61603072e1e24bc9a65babb125691d01", - "list_currency": "USD", "list_rate": 7.75, "mode": "test", "object": "Rate", - "rate": 7.75, "retail_currency": "USD", "retail_rate": 7.75, "service": "ParcelSelect", - "shipment_id": "shp_1afa9ef87b38400fb36f536c94103626", "updated_at": "2023-04-26T17:24:24Z"}}, - {"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": 3, - "percentile_75": 3, "percentile_85": 3, "percentile_90": 3, "percentile_95": - 3, "percentile_97": 3, "percentile_99": 5}, "easypost_estimated_delivery_date": - "2023-05-01", "planned_ship_date": "2023-04-28"}, "rate": {"carrier": "USPS", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": - "2023-04-26T17:24:24Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": - false, "delivery_days": 2, "est_delivery_days": 2, "id": "rate_739ce4e66e0947b4932f8a58a33147ad", - "list_currency": "USD", "list_rate": 8.24, "mode": "test", "object": "Rate", - "rate": 7.58, "retail_currency": "USD", "retail_rate": 10.2, "service": "Priority", - "shipment_id": "shp_1afa9ef87b38400fb36f536c94103626", "updated_at": "2023-04-26T17:24:24Z"}}, - {"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": 3, - "percentile_75": 3, "percentile_85": 3, "percentile_90": 3, "percentile_95": - 3, "percentile_97": 3, "percentile_99": 5}, "easypost_estimated_delivery_date": - "2023-05-01", "planned_ship_date": "2023-04-28"}, "rate": {"carrier": "USPS", - "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": - "2023-04-26T17:24:24Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": - false, "delivery_days": 3, "est_delivery_days": 3, "id": "rate_446b930d2aa74a44a15076a787a73f79", - "list_currency": "USD", "list_rate": 6.07, "mode": "test", "object": "Rate", - "rate": 6.07, "retail_currency": "USD", "retail_rate": 6.07, "service": "First", - "shipment_id": "shp_1afa9ef87b38400fb36f536c94103626", "updated_at": "2023-04-26T17:24:24Z"}}]}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '3115' - content-type: - - application/json; charset=utf-8 - etag: - - W/"12ebf01d89c011646e2cba6bab592b58" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - e7308c8064495e48e7873cc400192fd3 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb4nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq a29e4ad05c - x-runtime: - - '0.156419' - x-version-label: - - easypost-202304252326-79950b6035-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/test_scanform_all.yaml b/tests/cassettes/test_scanform_all.yaml index 0501fda0..64775b76 100644 --- a/tests/cassettes/test_scanform_all.yaml +++ b/tests/cassettes/test_scanform_all.yaml @@ -16,49 +16,31 @@ interactions: uri: https://api.easypost.com/v2/scan_forms?page_size=5 response: body: - string: '{"scan_forms": [{"id": "sf_e797f779358a41eeacdf12f050f4f736", "object": - "ScanForm", "created_at": "2023-05-12T19:37:53Z", "updated_at": "2023-05-12T19:37:54Z", - "tracking_codes": ["9400100104262209121370"], "address": {"id": "adr_76d1aec4f0fc11edb6f73cecef1b359e", - "object": "Address", "created_at": "2023-05-12T19:37:43+00:00", "updated_at": - "2023-05-12T19:37:43+00:00", "name": "Elizabeth Swan", "company": null, "street1": + string: '{"scan_forms": [{"id": "sf_a1082a2498034042a96617a8d79ff0c4", "object": + "ScanForm", "created_at": "2025-03-06T19:47:39Z", "updated_at": "2025-03-06T19:47:39Z", + "tracking_codes": ["9400100208303109500638"], "address": {"id": "adr_d671882efac311ef846fac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:47:29+00:00", "updated_at": + "2025-03-06T19:47:29+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230512/96fdbb0435bf46028353bb4bc0e6589e.pdf", - "form_file_type": null, "batch_id": "batch_93bbd242fffd456899d0874728667ca6", - "confirmation": null}, {"id": "sf_4bc2f73b448747db89c9023c0dcfc53a", "object": - "ScanForm", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "tracking_codes": ["9400100104262210322148"], "address": {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T15:35:31+00:00", "updated_at": - "2023-05-16T15:35:31+00:00", "name": "Elizabeth Swan", "company": null, "street1": - "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", - "zip": "90277", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/5b62bfdffb694512ac744379dac2b304.pdf", - "form_file_type": null, "batch_id": "batch_1556ea8d81c94d07911dd0eab99ec9fe", - "confirmation": null}, {"id": "sf_3e24eda871db4cbf9af092c5399f5adc", "object": - "ScanForm", "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:35Z", - "tracking_codes": ["9400100104262210322155"], "address": {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T15:35:33+00:00", "updated_at": - "2023-05-16T15:35:33+00:00", "name": "Elizabeth Swan", "company": null, "street1": - "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", - "zip": "90277", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/2244428c081045f9b846b5a3cc89b2fd.pdf", - "form_file_type": null, "batch_id": "batch_0897e22d382a43c4910829b48a77ed84", - "confirmation": null}], "has_more": false}' + null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20250306/e86b4473047e82445cb481f8060f4f2eec.pdf", + "form_file_type": null, "batch_id": "batch_79b95699e2644f198db68d1824c11497", + "confirmation": null}, {"id": "sf_83a81b98465f454489ad1591a897f1de", "object": + "ScanForm", "created_at": "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:48:46Z", + "tracking_codes": [], "address": null, "status": "failed", "message": "Unable + to create manifest. USPS received too many requests in test mode, please slow + down and try again later", "form_url": null, "form_file_type": null, "batch_id": + "batch_05022d9288d947048a4f6196e6f2bf1e", "confirmation": null}], "has_more": + false}' headers: cache-control: - private, no-cache, no-store content-length: - - '2745' + - '1361' content-type: - application/json; charset=utf-8 - etag: - - W/"eea309b1d9ffb70f9747250c82dfbfbe" expires: - '0' pragma: @@ -71,25 +53,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e036463a2c7e786b3dc002511da + - 8e8eb62767c9fc1fe2b97b9c0018ada9 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.118964' + - '0.124947' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_scanform_create.yaml b/tests/cassettes/test_scanform_create.yaml index 89d89ea4..3fa87be1 100644 --- a/tests/cassettes/test_scanform_create.yaml +++ b/tests/cassettes/test_scanform_create.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T15:35:31Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210322148", "updated_at": "2023-05-16T15:35:32Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T15:35:31+00:00", "updated_at": "2023-05-16T15:35:31+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_97a9b127466144618d467aa475905b33", - "object": "Parcel", "created_at": "2023-05-16T15:35:31Z", "updated_at": "2023-05-16T15:35:31Z", + string: '{"id": "shp_c1dd0ad87cfc4a038e632cb27d1d88a6", "created_at": "2025-03-07T16:49:20Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505725", "updated_at": + "2025-03-07T16:49:21Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_1df63e5cfb7411efbe97ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:49:20+00:00", "updated_at": + "2025-03-07T16:49:20+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_79c077a915e6448abd825b27b924a269", "object": + "Parcel", "created_at": "2025-03-07T16:49:20Z", "updated_at": "2025-03-07T16:49:20Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_99b94a85b2234933a2e3f2d90752e96a", - "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T15:35:32Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d3cae58e4e9044e18094981fbcd152c0", + "created_at": "2025-03-07T16:49:21Z", "updated_at": "2025-03-07T16:49:21Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:49:21Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/ceff03b2653c4b36850eb2081fadeb7f.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8d405b9ed98dd42cea2c346f6be53e66f.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_264cf6b604004861aec1bdfe9c752977", "object": - "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ab93efcacbc7424e8c19a4612902c982", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_142b77c6d9e9485e865fecb816825970", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_159ad3a23fa641dbb2f33bb9bfbbafdc", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_159ad3a23fa641dbb2f33bb9bfbbafdc", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_73bffbfc8c0a4eefab463dd925395cfe", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210322148", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T15:35:32Z", "updated_at": - "2023-05-16T15:35:32Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", "carrier": "USPS", + null}, "rates": [{"id": "rate_6954d36c78384edf888caaf4336289f1", "object": + "Rate", "created_at": "2025-03-07T16:49:21Z", "updated_at": "2025-03-07T16:49:21Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_c1dd0ad87cfc4a038e632cb27d1d88a6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4ab9d13850ec497786498a69dad35da0", + "object": "Rate", "created_at": "2025-03-07T16:49:21Z", "updated_at": "2025-03-07T16:49:21Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_c1dd0ad87cfc4a038e632cb27d1d88a6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9879ecc5f3014572883ec50011ff2989", + "object": "Rate", "created_at": "2025-03-07T16:49:21Z", "updated_at": "2025-03-07T16:49:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_c1dd0ad87cfc4a038e632cb27d1d88a6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_9879ecc5f3014572883ec50011ff2989", "object": + "Rate", "created_at": "2025-03-07T16:49:21Z", "updated_at": "2025-03-07T16:49:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_c1dd0ad87cfc4a038e632cb27d1d88a6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_ad86ecf48b7d46b0855302218c38e280", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505725", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:49:21Z", + "updated_at": "2025-03-07T16:49:21Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_c1dd0ad87cfc4a038e632cb27d1d88a6", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzczYmZmYmZjOGMwYTRlZWZhYjQ2M2RkOTI1Mzk1Y2Zl"}, - "to_address": {"id": "adr_4af3f434f3ff11edb17dac1f6bc72124", "object": "Address", - "created_at": "2023-05-16T15:35:31+00:00", "updated_at": "2023-05-16T15:35:32+00:00", + "https://track.easypost.com/djE6dHJrX2FkODZlY2Y0OGI3ZDQ2YjA4NTUzMDIyMThjMzhlMjgw"}, + "to_address": {"id": "adr_1df212a6fb7411efa452ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:49:20+00:00", "updated_at": "2025-03-07T16:49:21+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T15:35:31+00:00", "updated_at": - "2023-05-16T15:35:31+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_1df63e5cfb7411efbe97ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:49:20+00:00", "updated_at": + "2025-03-07T16:49:20+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_4af3f434f3ff11edb17dac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T15:35:31+00:00", "updated_at": "2023-05-16T15:35:32+00:00", "name": + "adr_1df212a6fb7411efa452ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:49:20+00:00", "updated_at": "2025-03-07T16:49:21+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_ecb4968651e7484eabaed3825d1100ed", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"780f5f44d89d99eb296ade65940a69d6" expires: - '0' location: - - /api/v2/shipments/shp_ecb4968651e7484eabaed3825d1100ed + - /api/v2/shipments/shp_c1dd0ad87cfc4a038e632cb27d1d88a6 pragma: - no-cache referrer-policy: @@ -146,27 +138,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e046463a2c3e786b3da00251097 + - 6eaaf8fb67cb2390e2aac198000bbb99 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.196224' + - '0.865529' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"scan_form": {"shipment": [{"id": "shp_ecb4968651e7484eabaed3825d1100ed"}]}}' + body: '{"scan_form": {"shipment": [{"id": "shp_c1dd0ad87cfc4a038e632cb27d1d88a6"}]}}' headers: Accept: - '*/*' @@ -186,27 +178,25 @@ interactions: uri: https://api.easypost.com/v2/scan_forms response: body: - string: '{"id": "sf_4bc2f73b448747db89c9023c0dcfc53a", "object": "ScanForm", - "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "tracking_codes": ["9400100104262210322148"], "address": {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T15:35:31+00:00", "updated_at": - "2023-05-16T15:35:31+00:00", "name": "Elizabeth Swan", "company": null, "street1": + string: '{"id": "sf_8eeeea1e23b44a8388cbb85b12595f46", "object": "ScanForm", + "created_at": "2025-03-07T16:49:21Z", "updated_at": "2025-03-07T16:49:22Z", + "tracking_codes": ["9400100208303109505725"], "address": {"id": "adr_1df63e5cfb7411efbe97ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:49:20+00:00", "updated_at": + "2025-03-07T16:49:20+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/5b62bfdffb694512ac744379dac2b304.pdf", - "form_file_type": null, "batch_id": "batch_1556ea8d81c94d07911dd0eab99ec9fe", + null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20250307/e8f8c453570fc64e979358710bfb60dbd7.pdf", + "form_file_type": null, "batch_id": "batch_7e1ab0edb3f5426097fd37bfeb3718cb", "confirmation": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '903' + - '905' content-type: - application/json; charset=utf-8 - etag: - - W/"5ee033e6280694807472ab060a3d0f0a" expires: - '0' pragma: @@ -224,20 +214,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e046463a2c5e786b3da00251108 + - 6eaaf8fb67cb2391e2aac198000bbcce x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.314620' + - '0.303094' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_scanform_get_next_page.yaml b/tests/cassettes/test_scanform_get_next_page.yaml index d95d445c..88b2be85 100644 --- a/tests/cassettes/test_scanform_get_next_page.yaml +++ b/tests/cassettes/test_scanform_get_next_page.yaml @@ -16,49 +16,31 @@ interactions: uri: https://api.easypost.com/v2/scan_forms?page_size=5 response: body: - string: '{"scan_forms": [{"id": "sf_e797f779358a41eeacdf12f050f4f736", "object": - "ScanForm", "created_at": "2023-05-12T19:37:53Z", "updated_at": "2023-05-12T19:37:54Z", - "tracking_codes": ["9400100104262209121370"], "address": {"id": "adr_76d1aec4f0fc11edb6f73cecef1b359e", - "object": "Address", "created_at": "2023-05-12T19:37:43+00:00", "updated_at": - "2023-05-12T19:37:43+00:00", "name": "Elizabeth Swan", "company": null, "street1": + string: '{"scan_forms": [{"id": "sf_a1082a2498034042a96617a8d79ff0c4", "object": + "ScanForm", "created_at": "2025-03-06T19:47:39Z", "updated_at": "2025-03-06T19:47:39Z", + "tracking_codes": ["9400100208303109500638"], "address": {"id": "adr_d671882efac311ef846fac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:47:29+00:00", "updated_at": + "2025-03-06T19:47:29+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230512/96fdbb0435bf46028353bb4bc0e6589e.pdf", - "form_file_type": null, "batch_id": "batch_93bbd242fffd456899d0874728667ca6", - "confirmation": null}, {"id": "sf_4bc2f73b448747db89c9023c0dcfc53a", "object": - "ScanForm", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "tracking_codes": ["9400100104262210322148"], "address": {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T15:35:31+00:00", "updated_at": - "2023-05-16T15:35:31+00:00", "name": "Elizabeth Swan", "company": null, "street1": - "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", - "zip": "90277", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/5b62bfdffb694512ac744379dac2b304.pdf", - "form_file_type": null, "batch_id": "batch_1556ea8d81c94d07911dd0eab99ec9fe", - "confirmation": null}, {"id": "sf_3e24eda871db4cbf9af092c5399f5adc", "object": - "ScanForm", "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:35Z", - "tracking_codes": ["9400100104262210322155"], "address": {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T15:35:33+00:00", "updated_at": - "2023-05-16T15:35:33+00:00", "name": "Elizabeth Swan", "company": null, "street1": - "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", - "zip": "90277", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/2244428c081045f9b846b5a3cc89b2fd.pdf", - "form_file_type": null, "batch_id": "batch_0897e22d382a43c4910829b48a77ed84", - "confirmation": null}], "has_more": false}' + null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20250306/e86b4473047e82445cb481f8060f4f2eec.pdf", + "form_file_type": null, "batch_id": "batch_79b95699e2644f198db68d1824c11497", + "confirmation": null}, {"id": "sf_83a81b98465f454489ad1591a897f1de", "object": + "ScanForm", "created_at": "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:48:46Z", + "tracking_codes": [], "address": null, "status": "failed", "message": "Unable + to create manifest. USPS received too many requests in test mode, please slow + down and try again later", "form_url": null, "form_file_type": null, "batch_id": + "batch_05022d9288d947048a4f6196e6f2bf1e", "confirmation": null}], "has_more": + false}' headers: cache-control: - private, no-cache, no-store content-length: - - '2745' + - '1361' content-type: - application/json; charset=utf-8 - etag: - - W/"eea309b1d9ffb70f9747250c82dfbfbe" expires: - '0' pragma: @@ -71,25 +53,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e016463a2c7e786b3dd002511ff + - 8e8eb62667c9fc1fe2b97bb40018ade5 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.042839' + - '0.101271' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_scanform_retrieve.yaml b/tests/cassettes/test_scanform_retrieve.yaml index 5b47aeda..c6b69e85 100644 --- a/tests/cassettes/test_scanform_retrieve.yaml +++ b/tests/cassettes/test_scanform_retrieve.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T15:35:33Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210322155", "updated_at": "2023-05-16T15:35:34Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T15:35:33+00:00", "updated_at": "2023-05-16T15:35:33+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_f90962fc4acd47b9b5008e7f08ba33fc", - "object": "Parcel", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", + string: '{"id": "shp_b866ef7a6e0240adace767c6d42193ae", "created_at": "2025-03-07T16:51:00Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505749", "updated_at": + "2025-03-07T16:51:01Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_5944eb1bfb7411ef83983cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:51:00+00:00", "updated_at": + "2025-03-07T16:51:00+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_e9a596b81faa4b76ab8fe5f4898146c8", "object": + "Parcel", "created_at": "2025-03-07T16:51:00Z", "updated_at": "2025-03-07T16:51:00Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_7b6c47a83d794f24b88d7a10b1fd332d", - "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:34Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T15:35:34Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_1c5bc270bffc47489a282fb21d603785", + "created_at": "2025-03-07T16:51:00Z", "updated_at": "2025-03-07T16:51:01Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:51:00Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/ccc578993f1e4d41a2f46a2721a56982.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e831c879812b814ab68df3738df5be0181.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_2779ff61f3dc4f63a486b6d6f1a04c6a", "object": - "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8b1babb654e74212ad25c8fcffe8af62", - "object": "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8969a7b87c9e451a888226dc9deed52b", - "object": "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_04d55ba308964270bca1ff2fbd98ecd9", - "object": "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_04d55ba308964270bca1ff2fbd98ecd9", - "object": "Rate", "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:34Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_b050765bf01c47119b433af5f2f5fafc", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210322155", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T15:35:34Z", "updated_at": - "2023-05-16T15:35:34Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", "carrier": "USPS", + null}, "rates": [{"id": "rate_a542bd5cd2134b3b895e237b4b66d01e", "object": + "Rate", "created_at": "2025-03-07T16:51:00Z", "updated_at": "2025-03-07T16:51:00Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b866ef7a6e0240adace767c6d42193ae", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a5b15374fe6843bb8f56e18fe7ca4bee", + "object": "Rate", "created_at": "2025-03-07T16:51:00Z", "updated_at": "2025-03-07T16:51:00Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b866ef7a6e0240adace767c6d42193ae", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_780846ba37d147c3b8faeea03c501979", + "object": "Rate", "created_at": "2025-03-07T16:51:00Z", "updated_at": "2025-03-07T16:51:00Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_b866ef7a6e0240adace767c6d42193ae", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_a5b15374fe6843bb8f56e18fe7ca4bee", "object": + "Rate", "created_at": "2025-03-07T16:51:00Z", "updated_at": "2025-03-07T16:51:00Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b866ef7a6e0240adace767c6d42193ae", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_14cd89c9bb384ae4bdedd142afa79742", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505749", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:51:01Z", + "updated_at": "2025-03-07T16:51:01Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_b866ef7a6e0240adace767c6d42193ae", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrX2IwNTA3NjViZjAxYzQ3MTE5YjQzM2FmNWYyZjVmYWZj"}, - "to_address": {"id": "adr_4c0e7406f3ff11eda517ac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T15:35:33+00:00", "updated_at": "2023-05-16T15:35:33+00:00", + "https://track.easypost.com/djE6dHJrXzE0Y2Q4OWM5YmIzODRhZTRiZGVkZDE0MmFmYTc5NzQy"}, + "to_address": {"id": "adr_5941c90cfb7411ef8a55ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:51:00+00:00", "updated_at": "2025-03-07T16:51:00+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T15:35:33+00:00", "updated_at": - "2023-05-16T15:35:33+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_5944eb1bfb7411ef83983cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:51:00+00:00", "updated_at": + "2025-03-07T16:51:00+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_4c0e7406f3ff11eda517ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T15:35:33+00:00", "updated_at": "2023-05-16T15:35:33+00:00", "name": + "adr_5941c90cfb7411ef8a55ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:51:00+00:00", "updated_at": "2025-03-07T16:51:00+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_e75df861742345299c7c79743f8d40e8", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"527b77547314acf0a4edfe7c70332338" expires: - '0' location: - - /api/v2/shipments/shp_e75df861742345299c7c79743f8d40e8 + - /api/v2/shipments/shp_b866ef7a6e0240adace767c6d42193ae pragma: - no-cache referrer-policy: @@ -146,27 +138,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463a2c5e786b3db00251136 + - 6eaaf90067cb23f4e2aac23c000c2e22 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.993849' + - '0.865535' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"scan_form": {"shipment": [{"id": "shp_e75df861742345299c7c79743f8d40e8"}]}}' + body: '{"scan_form": {"shipment": [{"id": "shp_b866ef7a6e0240adace767c6d42193ae"}]}}' headers: Accept: - '*/*' @@ -186,27 +178,25 @@ interactions: uri: https://api.easypost.com/v2/scan_forms response: body: - string: '{"id": "sf_3e24eda871db4cbf9af092c5399f5adc", "object": "ScanForm", - "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:35Z", - "tracking_codes": ["9400100104262210322155"], "address": {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T15:35:33+00:00", "updated_at": - "2023-05-16T15:35:33+00:00", "name": "Elizabeth Swan", "company": null, "street1": + string: '{"id": "sf_a10db9bc049841658c7998cc5f3efd9b", "object": "ScanForm", + "created_at": "2025-03-07T16:51:01Z", "updated_at": "2025-03-07T16:51:01Z", + "tracking_codes": ["9400100208303109505749"], "address": {"id": "adr_5944eb1bfb7411ef83983cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:51:00+00:00", "updated_at": + "2025-03-07T16:51:00+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/2244428c081045f9b846b5a3cc89b2fd.pdf", - "form_file_type": null, "batch_id": "batch_0897e22d382a43c4910829b48a77ed84", + null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20250307/e8370b68d8a8a54eb48188bd0e974ca472.pdf", + "form_file_type": null, "batch_id": "batch_0cfb67c1bf034a87a19e7d604cb7ef95", "confirmation": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '903' + - '905' content-type: - application/json; charset=utf-8 - etag: - - W/"7c25106a05eb57e5d4b3abdb3964699d" expires: - '0' pragma: @@ -224,20 +214,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463a2c6e786b3db002511a2 + - 6eaaf90067cb23f5e2aac23c000c2f19 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.278241' + - '0.281051' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -257,30 +247,28 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/scan_forms/sf_3e24eda871db4cbf9af092c5399f5adc + uri: https://api.easypost.com/v2/scan_forms/sf_a10db9bc049841658c7998cc5f3efd9b response: body: - string: '{"id": "sf_3e24eda871db4cbf9af092c5399f5adc", "object": "ScanForm", - "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:35Z", - "tracking_codes": ["9400100104262210322155"], "address": {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T15:35:33+00:00", "updated_at": - "2023-05-16T15:35:33+00:00", "name": "Elizabeth Swan", "company": null, "street1": + string: '{"id": "sf_a10db9bc049841658c7998cc5f3efd9b", "object": "ScanForm", + "created_at": "2025-03-07T16:51:01Z", "updated_at": "2025-03-07T16:51:01Z", + "tracking_codes": ["9400100208303109505749"], "address": {"id": "adr_5944eb1bfb7411ef83983cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:51:00+00:00", "updated_at": + "2025-03-07T16:51:00+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "status": "created", "message": - null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/2244428c081045f9b846b5a3cc89b2fd.pdf", - "form_file_type": null, "batch_id": "batch_0897e22d382a43c4910829b48a77ed84", + null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20250307/e8370b68d8a8a54eb48188bd0e974ca472.pdf", + "form_file_type": null, "batch_id": "batch_0cfb67c1bf034a87a19e7d604cb7ef95", "confirmation": null}' headers: cache-control: - private, no-cache, no-store content-length: - - '903' + - '905' content-type: - application/json; charset=utf-8 - etag: - - W/"7c25106a05eb57e5d4b3abdb3964699d" expires: - '0' pragma: @@ -298,20 +286,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463a2c7e786b3db002511c6 + - 6eaaf90067cb23f5e2aac23c000c2f7a x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.038477' + - '0.030569' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_all.yaml b/tests/cassettes/test_shipment_all.yaml index 3407ddf8..5bf0dc89 100644 --- a/tests/cassettes/test_shipment_all.yaml +++ b/tests/cassettes/test_shipment_all.yaml @@ -16,406 +16,277 @@ interactions: uri: https://api.easypost.com/v2/shipments?page_size=5 response: body: - string: '{"shipments": [{"created_at": "2023-05-16T16:22:22Z", "is_return": - false, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "delivered", "tracking_code": "9400100104262210337456", - "updated_at": "2023-05-16T16:26:43Z", "batch_id": null, "batch_status": null, - "batch_message": null, "customs_info": {"id": "cstinfo_582daaed61af4385af1ab69afbe4bf31", - "object": "CustomsInfo", "created_at": "2023-05-16T16:22:22Z", "updated_at": - "2023-05-16T16:22:22Z", "contents_explanation": "", "contents_type": "merchandise", - "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI - 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, - "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": - [{"id": "cstitem_6533bee6732d4f66a02caa1e542d47f5", "object": "CustomsItem", - "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": - "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": - "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": - null}]}, "from_address": {"id": "adr_d62fb718f40511edb00fac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:22+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + string: '{"shipments": [{"id": "shp_6348a453cbd04b4189dc85524719e6b2", "created_at": + "2025-03-07T16:46:14Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": "9400100208303109505640", + "updated_at": "2025-03-07T16:46:15Z", "batch_id": "batch_0fc0517f6fb1426197560732520f8edd", + "batch_status": "postage_purchased", "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_af10e4b4fb7311ef9acaac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:14+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_29edd0beab3f49e8ab6d4414e6f99d08", - "object": "Parcel", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_a9373fdd04bd4d83874c7e397ecddcb6", + "object": "Parcel", "created_at": "2025-03-07T16:46:14Z", "updated_at": "2025-03-07T16:46:14Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_e606290bed134b98895b549d34a38416", - "created_at": "2023-05-16T16:22:23Z", "updated_at": "2023-05-16T16:22:25Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:22:23Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f54afe8913fb4046b55523838df4f97b", + "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:15Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/a9d19fca8ee5479591a317db0a9fba3d.png", - "label_pdf_url": null, "label_zpl_url": "https://easypost-files.s3-us-west-2.amazonaws.com/files/postage_label/20230516/397e83243d82404f98cd64718d68b8cf.zpl", - "label_epl2_url": null, "label_file": null}, "rates": [{"id": "rate_a4152cbf9403418d808e0ba0c7e05370", - "object": "Rate", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6320d535e8514d00826c079ae685e70d", - "object": "Rate", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_49c195d15ca84b5ea9fb470985118855", - "object": "Rate", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_221474bca29a41ae9f57e21ce626c3ee", "object": "Rate", "created_at": - "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_49c195d15ca84b5ea9fb470985118855", - "object": "Rate", "created_at": "2023-05-16T16:22:23Z", "updated_at": "2023-05-16T16:22:23Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_1c2c2fcd8ebd43c2abb6e526a2b39760", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337456", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:22:23Z", - "updated_at": "2023-05-16T16:25:24Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:25:24Z", "shipment_id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8b170594430f64d768ceb157887c5c28e.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_f9da1c97861743bba5eaf3db89b10898", "object": + "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f320606ea0bd45ef92a34f109234fc44", + "object": "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b501d85dcc0743fdb0d8ab673107bf5d", + "object": "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_b501d85dcc0743fdb0d8ab673107bf5d", "object": + "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_4c1b66c0dad34060a7b4704100bdd88e", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505640", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:15Z", + "updated_at": "2025-03-07T16:46:15Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:15Z", "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:25:24Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:15Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:02:24Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:07:24Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:43:24Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:34:24Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:14:24Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:24:24Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:16:24Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:15Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:16:24Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzFjMmMyZmNkOGViZDQzYzJhYmI2ZTUyNmEyYjM5NzYw"}, - "to_address": {"id": "adr_d62da3cff40511ed80c03cecef1b359e", "object": "Address", - "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:23+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_d62fb718f40511edb00fac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:22+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_d62da3cff40511ed80c03cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:23+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", - "object": "Shipment"}, {"created_at": "2023-05-16T16:21:05Z", "is_return": - false, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210337050", "updated_at": "2023-05-16T16:25:45Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a873eee6f40511ed9213ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:05+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzRjMWI2NmMwZGFkMzQwNjBhN2I0NzA0MTAwYmRkODhl"}, + "to_address": {"id": "adr_af0b9199fb7311ef9ac8ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:15+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "usps_zone": 4, "return_address": {"id": "adr_af10e4b4fb7311ef9acaac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:14+00:00", "updated_at": + "2025-03-07T16:46:14+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": + "adr_af0b9199fb7311ef9ac8ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:15+00:00", "name": + "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": + null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_3fbe7beb867a4b4889872877a790d9c7", - "object": "Parcel", "created_at": "2023-05-16T16:21:05Z", "updated_at": "2023-05-16T16:21:05Z", + null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": + true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, + "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", + "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, + {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, + "refunded": false}], "object": "Shipment"}, {"id": "shp_b674aad341c24fe18611019a72ff6e84", + "created_at": "2025-03-07T16:46:11Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505633", "updated_at": "2025-03-07T16:46:11Z", "batch_id": + "batch_6b38965e1d0a44578a404fede07d9825", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_acc761b6fb7311ef98773cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:11+00:00", "updated_at": + "2025-03-07T16:46:11+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_48819d3d4ffc44b898146405288b1b4e", "object": + "Parcel", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_a97b131316284b03a144dc2bcf3a6f90", - "created_at": "2023-05-16T16:21:07Z", "updated_at": "2023-05-16T16:21:07Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:07Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_7c4b7267da3f4b13a8834e79a7b0af3a", + "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:11Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/1b13765f6faf4183a9f65ee56be5309f.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8728792ec6b434a14a1f45d8e27c3db93.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_671eafd934504d4f98a24c74399c4dee", "object": - "Rate", "created_at": "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_56f6cc7dd57348958884d0c2c418e76f", - "object": "Rate", "created_at": "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_81ed2dfd0b384e9fb71a6f9040ad535a", "object": "Rate", "created_at": - "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_55628363de664009aec93b85250179b7", "object": "Rate", "created_at": - "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_56f6cc7dd57348958884d0c2c418e76f", - "object": "Rate", "created_at": "2023-05-16T16:21:07Z", "updated_at": "2023-05-16T16:21:07Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_04e23cace8034b7695f49811da9a37cc", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337050", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:07Z", - "updated_at": "2023-05-16T16:24:07Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:07Z", "shipment_id": "shp_36d0b9cd93734d3fbcdeab3f3b14739e", + null}, "rates": [{"id": "rate_f74107b724334c1695f76a362d6d1354", "object": + "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c50e7434c2b8494cbc89405e54ee777e", + "object": "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_345992a3bb14453ca8c41069addcbbad", + "object": "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_345992a3bb14453ca8c41069addcbbad", "object": + "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_7ab5213aaf264b53ab2f296d2efc7e73", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505633", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:12Z", + "updated_at": "2025-03-07T16:46:12Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:12Z", "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:07Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:12Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:07Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:07Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:07Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:07Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:07Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:07Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:07Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:12Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:07Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzA0ZTIzY2FjZTgwMzRiNzY5NWY0OTgxMWRhOWEzN2Nj"}, - "to_address": {"id": "adr_a87158f6f40511ed9151ac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:06+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_a873eee6f40511ed9213ac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:05+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_a87158f6f40511ed9151ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:06+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzdhYjUyMTNhYWYyNjRiNTNhYjJmMjk2ZDJlZmM3ZTcz"}, + "to_address": {"id": "adr_acc16571fb7311ef9f45ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:46:10+00:00", "updated_at": "2025-03-07T16:46:11+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "usps_zone": 4, "return_address": {"id": "adr_acc761b6fb7311ef98773cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:11+00:00", "updated_at": + "2025-03-07T16:46:11+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": + "adr_acc16571fb7311ef9f45ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:10+00:00", "updated_at": "2025-03-07T16:46:11+00:00", "name": + "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": + null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_36d0b9cd93734d3fbcdeab3f3b14739e", - "object": "Shipment"}, {"created_at": "2023-05-16T16:21:03Z", "is_return": - false, "messages": [], "mode": "test", "options": {"currency": "USD", "payment": - {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", - "tracking_code": "9400100104262210337043", "updated_at": "2023-05-16T16:25:44Z", - "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": - null, "from_address": {"id": "adr_a729f763f40511ed8c1aac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:21:03+00:00", "updated_at": "2023-05-16T16:21:03+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_7046a1815ffc47d7b9d86055a62c4f37", - "object": "Parcel", "created_at": "2023-05-16T16:21:03Z", "updated_at": "2023-05-16T16:21:03Z", + null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": + true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, + "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", + "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, + {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, + "refunded": false}], "object": "Shipment"}, {"id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", + "created_at": "2025-03-07T16:46:07Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505626", "updated_at": "2025-03-07T16:46:07Z", "batch_id": + "batch_1da4ef8e3efa4581b366b81ccf81b4f2", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_aa69c593fb7311ef971b3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:07+00:00", "updated_at": + "2025-03-07T16:46:07+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_d65c73ef0b0741b683c85ae149b4c615", "object": + "Parcel", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_9ceb180e70d54d7aa9b2776826753975", - "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:04Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f91a9e01da6c4e378d2dce661c4c6911", + "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:07Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/92a7fa8af51548b5aed37a91569301e7.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8534b38912c20459a8afb5b43a2a38f93.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_814adb421bca4e6faebf760e90c224c3", "object": - "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5baf23f138e84074bd2c005e3b91a58d", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_24bd73a25bae4892af25a5f8513e6ab0", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_1b7f764cffa6475c860423b54bc975da", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_d8db44bccbcd497bb1262510cc379364", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_8444901e342242c5809763e4130d1cd9", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337043", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:04Z", - "updated_at": "2023-05-16T16:24:04Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:04Z", "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", + null}, "rates": [{"id": "rate_59faed8017f04a3a929537ddda74d7fb", "object": + "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_feb24755f1794a458896fecb8a014f3e", + "object": "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9f7170c31a6a4cd4b07a7ee5c114aadc", + "object": "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_9f7170c31a6a4cd4b07a7ee5c114aadc", "object": + "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_5b5388ca5edc4c2188e41862ace7cbee", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505626", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:07Z", + "updated_at": "2025-03-07T16:46:07Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:07Z", "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:04Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:07Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:04Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:04Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:04Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:04Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:04Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:04Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:04Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:07Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:04Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzg0NDQ5MDFlMzQyMjQyYzU4MDk3NjNlNDEzMGQxY2Q5"}, - "to_address": {"id": "adr_a7273923f40511ed8c0fac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:21:03+00:00", "updated_at": "2023-05-16T16:21:03+00:00", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzViNTM4OGNhNWVkYzRjMjE4OGU0MTg2MmFjZTdjYmVl"}, + "to_address": {"id": "adr_aa670212fb7311ef9ddfac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:46:07+00:00", "updated_at": "2025-03-07T16:46:07+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -423,15 +294,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_a729f763f40511ed8c1aac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T16:21:03+00:00", "updated_at": - "2023-05-16T16:21:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_aa69c593fb7311ef971b3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:07+00:00", "updated_at": + "2025-03-07T16:46:07+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_a7273923f40511ed8c0fac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:21:03+00:00", "updated_at": "2023-05-16T16:21:03+00:00", "name": + "adr_aa670212fb7311ef9ddfac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:07+00:00", "updated_at": "2025-03-07T16:46:07+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -441,112 +312,80 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_2c633f7b7b42407e950ef0941c189e68", "object": - "Shipment"}, {"created_at": "2023-05-16T16:21:01Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210337036", "updated_at": "2023-05-16T16:25:46Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a63b8900f40511ed929fac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T16:21:01+00:00", "updated_at": "2023-05-16T16:21:01+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_8ac4fabb4a8d40c7986154d37aa33350", - "object": "Parcel", "created_at": "2023-05-16T16:21:01Z", "updated_at": "2023-05-16T16:21:01Z", + "refunded": false}], "object": "Shipment"}, {"id": "shp_622803c6479446e895b6ec9ffc580f58", + "created_at": "2025-03-07T16:46:03Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505619", "updated_at": "2025-03-07T16:46:04Z", "batch_id": + "batch_b5e1cf8eeb0e45adb7feb089b3d12a46", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_a84fa087fb7311ef9cb3ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:03+00:00", "updated_at": + "2025-03-07T16:46:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_5c264ed4432848aaad2545e0dfb8eeb4", "object": + "Parcel", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f813dd28e3f94059aa447739dab01641", - "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:02Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_2dd5e193a0874563acda1913359fbef3", + "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:04Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/fbb018d920c9467b8efafbea99b7c189.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e82ca3296f28234c8c963d9042eefecad2.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_24d6dd80f86b407e9d3db6c8fe8bf06f", "object": - "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_3799f23dff1c46c7b8e106c6d94d4640", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_62a7d8f9d7df4660b07fc1ec5e4bf63d", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c0107337ff73445889af69527f669b05", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_c0107337ff73445889af69527f669b05", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_069b6b07e43144a0aca47b6590e52652", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337036", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:03Z", - "updated_at": "2023-05-16T16:24:03Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:03Z", "shipment_id": "shp_ef08e475e134404e8870828a410b8325", + null}, "rates": [{"id": "rate_5ad2d3f3665b4343b75e85a5a0fe02de", "object": + "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_646a6333c5af49168d64b3df5382e557", + "object": "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5179687711ef43e2a5188ee7aa89da97", + "object": "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_646a6333c5af49168d64b3df5382e557", "object": + "Rate", "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_11c660ecffdf4b938a1212ec4709662c", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505619", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:04Z", + "updated_at": "2025-03-07T16:46:04Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:04Z", "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:04Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:03Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:03Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:03Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:03Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:03Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:04Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:03Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzA2OWI2YjA3ZTQzMTQ0YTBhY2E0N2I2NTkwZTUyNjUy"}, - "to_address": {"id": "adr_a638b4ebf40511ed87ecac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:21:01+00:00", "updated_at": "2023-05-16T16:21:02+00:00", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzExYzY2MGVjZmZkZjRiOTM4YTEyMTJlYzQ3MDk2NjJj"}, + "to_address": {"id": "adr_a84d64eafb7311ef95cf3cecef1b359e", "object": "Address", + "created_at": "2025-03-07T16:46:03+00:00", "updated_at": "2025-03-07T16:46:03+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -554,15 +393,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_a63b8900f40511ed929fac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T16:21:01+00:00", "updated_at": - "2023-05-16T16:21:01+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_a84fa087fb7311ef9cb3ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:03+00:00", "updated_at": + "2025-03-07T16:46:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_a638b4ebf40511ed87ecac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:21:01+00:00", "updated_at": "2023-05-16T16:21:02+00:00", "name": + "adr_a84d64eafb7311ef95cf3cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:46:03+00:00", "updated_at": "2025-03-07T16:46:03+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -572,162 +411,113 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}, {"object": "Fee", "type": "CarbonOffsetFee", "amount": - "0.11000", "charged": true, "refunded": false}], "id": "shp_ef08e475e134404e8870828a410b8325", - "object": "Shipment"}, {"created_at": "2023-05-16T16:20:59Z", "is_return": - false, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210337029", "updated_at": "2023-05-16T16:25:09Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a4879739f40511ed96723cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:20:59+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_6922e9cbc89b4f9fb8a7b3e080ecebc9", - "object": "Parcel", "created_at": "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", + "refunded": false}], "object": "Shipment"}, {"id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", + "created_at": "2025-03-07T16:45:59Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505602", "updated_at": "2025-03-07T16:46:00Z", "batch_id": + "batch_63f493b2b5484ad8a220c9567867732c", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_a6167a17fb7311ef94473cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:45:59+00:00", "updated_at": + "2025-03-07T16:45:59+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_c2911b5c7bda49a9803dfba239fad665", "object": + "Parcel", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_6a53f92ccdfe4fe0848339a84afda561", - "created_at": "2023-05-16T16:21:00Z", "updated_at": "2023-05-16T16:21:01Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:00Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d08201d458744a4ebf36695bb79f7dee", + "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:00Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/a7c244af57b04f5f8fd597e7adc81378.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8d6cfe7a133ab49f19fdbb00699c16dd0.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_c2df9308a3a14666ae9fac7e9d19a117", "object": - "Rate", "created_at": "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6a649176a57b41a290d5df207bacf437", - "object": "Rate", "created_at": "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_bce0261c9b8e438aa2dc870e2a75240e", "object": "Rate", "created_at": - "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_00efbcd87088402ba1d57dca1914a51f", "object": "Rate", "created_at": - "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_6a649176a57b41a290d5df207bacf437", - "object": "Rate", "created_at": "2023-05-16T16:21:00Z", "updated_at": "2023-05-16T16:21:00Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_a3a240fb1a054cda94ceddd844b2d980", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337029", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:01Z", - "updated_at": "2023-05-16T16:24:01Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:01Z", "shipment_id": "shp_5efc9f87bef5468691e1aa0e0cb7c085", + null}, "rates": [{"id": "rate_e62e203a40874c9f9733fbd55e5fe9a8", "object": + "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_aee96176a0764400a3bc4a6a200b4d17", + "object": "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ac50b2827b524b9f9ab7a19507dfb541", + "object": "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_aee96176a0764400a3bc4a6a200b4d17", "object": + "Rate", "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_49bbcbf123ae4414984b6ee5182fc53b", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505602", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:00Z", + "updated_at": "2025-03-07T16:46:00Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:00Z", "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:00Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:01Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:01Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:01Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:00Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:01Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2EzYTI0MGZiMWEwNTRjZGE5NGNlZGRkODQ0YjJkOTgw"}, - "to_address": {"id": "adr_a4815838f40511ed90e6ac1f6bc72124", "object": "Address", - "created_at": "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:21:00+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_a4879739f40511ed96723cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:20:59+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_a4815838f40511ed90e6ac1f6bc72124", "object": - "Address", "created_at": "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:21:00+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzQ5YmJjYmYxMjNhZTQ0MTQ5ODRiNmVlNTE4MmZjNTNi"}, + "to_address": {"id": "adr_a613c9f6fb7311ef9555ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:45:59+00:00", "updated_at": "2025-03-07T16:46:00+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "usps_zone": 4, "return_address": {"id": "adr_a6167a17fb7311ef94473cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:45:59+00:00", "updated_at": + "2025-03-07T16:45:59+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": + "adr_a613c9f6fb7311ef9555ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:45:59+00:00", "updated_at": "2025-03-07T16:46:00+00:00", "name": + "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": + null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}, {"object": "Fee", "type": - "CarbonOffsetFee", "amount": "0.11000", "charged": true, "refunded": false}], - "id": "shp_5efc9f87bef5468691e1aa0e0cb7c085", "object": "Shipment"}], "has_more": - true}' + null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": + true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, + "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", + "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, + {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, + "refunded": false}], "object": "Shipment"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '55045' + - '38221' content-type: - application/json; charset=utf-8 - etag: - - W/"cd9715f54594174309f7466458f77bcc" expires: - '0' pragma: @@ -745,20 +535,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e66463afe0e7872f590027a268 + - 6eaaf8ff67cb22dae2aaba20000add77 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.415823' + - '0.502565' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_buy.yaml b/tests/cassettes/test_shipment_buy.yaml index cdf35342..20351a69 100644 --- a/tests/cassettes/test_shipment_buy.yaml +++ b/tests/cassettes/test_shipment_buy.yaml @@ -11,7 +11,7 @@ interactions: "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": - "PNG", "invoice_number": "123"}, "reference": "123"}, "carbon_offset": false}' + "PNG", "invoice_number": "123"}, "reference": "123"}}' headers: Accept: - '*/*' @@ -20,7 +20,7 @@ interactions: Connection: - keep-alive Content-Length: - - '978' + - '954' Content-Type: - application/json authorization: @@ -31,106 +31,84 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T22:18:41Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": null, "updated_at": - "2023-05-16T22:18:42Z", "batch_id": null, "batch_status": null, "batch_message": - null, "customs_info": {"id": "cstinfo_b1c4c2af09fc4ef295c9bddd01131e69", "object": - "CustomsInfo", "created_at": "2023-05-16T22:18:41Z", "updated_at": "2023-05-16T22:18:41Z", - "contents_explanation": "", "contents_type": "merchandise", "customs_certify": - true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": - "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_fe79c845223c4425974154387fc1e38c", - "object": "CustomsItem", "created_at": "2023-05-16T22:18:41Z", "updated_at": - "2023-05-16T22:18:41Z", "description": "Sweet shirts", "hs_tariff_number": - "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": - 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, - "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": - "adr_9d61dd38f43711eda5d7ac1f6bc53342", "object": "Address", "created_at": - "2023-05-16T22:18:41+00:00", "updated_at": "2023-05-16T22:18:41+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_16578f588f9546ec914afd2474e24ff5", "created_at": "2025-03-07T16:46:20Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-07T16:46:20Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_f7b53f1e1fc34b5c8d19c1e5632d86fa", + "object": "CustomsInfo", "created_at": "2025-03-07T16:46:19Z", "updated_at": + "2025-03-07T16:46:19Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_28ebda7160d14ab692e6f511b48c5e0c", "object": "CustomsItem", + "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_b21acf8efb7311ef9c71ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:19+00:00", "updated_at": "2025-03-07T16:46:19+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_ad90a97bc2774ec59f182cfe5ff223f1", - "object": "Parcel", "created_at": "2023-05-16T22:18:41Z", "updated_at": "2023-05-16T22:18:41Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_f20a001b1b1b4a40a2c02bdb83dafb9c", + "object": "Parcel", "created_at": "2025-03-07T16:46:19Z", "updated_at": "2025-03-07T16:46:19Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_136c5eba86434379bfeacbe3a3e8a6f1", - "object": "Rate", "created_at": "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_c4f7e5ff2f4c4c1394fc750a3260755f", + "object": "Rate", "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5b67424f63314af1b997aa72d45e41be", + "object": "Rate", "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2d131482797945a4bfe126c656b838fb", - "object": "Rate", "created_at": "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_e1a21e1635784685bdeaaa435ecf2662", "object": "Rate", "created_at": - "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_e555d8dc9ddf46d2818ff3292d92129f", "object": "Rate", "created_at": - "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_9d5ed99bf43711eda7e3ac1f6bc539ae", "object": - "Address", "created_at": "2023-05-16T22:18:41+00:00", "updated_at": "2023-05-16T22:18:41+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_9d61dd38f43711eda5d7ac1f6bc53342", - "object": "Address", "created_at": "2023-05-16T22:18:41+00:00", "updated_at": - "2023-05-16T22:18:41+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4d1f36fa716c4b1292cacbdf19227c2d", + "object": "Rate", "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b215ae4ffb7311efbccbac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:19+00:00", "updated_at": + "2025-03-07T16:46:19+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_9d5ed99bf43711eda7e3ac1f6bc539ae", "object": "Address", "created_at": - "2023-05-16T22:18:41+00:00", "updated_at": "2023-05-16T22:18:41+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b21acf8efb7311ef9c71ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:19+00:00", "updated_at": "2025-03-07T16:46:19+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b215ae4ffb7311efbccbac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:19+00:00", "updated_at": "2025-03-07T16:46:19+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_2c24e761a8454f54bf34cb87869c5f2a", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6722' + - '5160' content-type: - application/json; charset=utf-8 - etag: - - W/"fb023969f6ee23045a3ba25335963c82" expires: - '0' location: - - /api/v2/shipments/shp_2c24e761a8454f54bf34cb87869c5f2a + - /api/v2/shipments/shp_16578f588f9546ec914afd2474e24ff5 pragma: - no-cache referrer-policy: @@ -146,28 +124,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e364640141e78964da004580ff + - 6eaaf90167cb22dbe2aaba22000adfe1 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.611733' + - '0.250258' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"rate": {"id": "rate_2d131482797945a4bfe126c656b838fb"}, "carbon_offset": - false}' + body: '{"rate": {"id": "rate_4d1f36fa716c4b1292cacbdf19227c2d"}}' headers: Accept: - '*/*' @@ -176,7 +153,7 @@ interactions: Connection: - keep-alive Content-Length: - - '81' + - '57' Content-Type: - application/json authorization: @@ -184,113 +161,96 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/shipments/shp_2c24e761a8454f54bf34cb87869c5f2a/buy + uri: https://api.easypost.com/v2/shipments/shp_16578f588f9546ec914afd2474e24ff5/buy response: body: - string: '{"created_at": "2023-05-16T22:18:41Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": "9400100104262210420264", - "updated_at": "2023-05-16T22:18:43Z", "batch_id": null, "batch_status": null, - "batch_message": null, "customs_info": {"id": "cstinfo_b1c4c2af09fc4ef295c9bddd01131e69", - "object": "CustomsInfo", "created_at": "2023-05-16T22:18:41Z", "updated_at": - "2023-05-16T22:18:41Z", "contents_explanation": "", "contents_type": "merchandise", - "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI - 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, - "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": - [{"id": "cstitem_fe79c845223c4425974154387fc1e38c", "object": "CustomsItem", - "created_at": "2023-05-16T22:18:41Z", "updated_at": "2023-05-16T22:18:41Z", - "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": - "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": - "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": - null}]}, "from_address": {"id": "adr_9d61dd38f43711eda5d7ac1f6bc53342", "object": - "Address", "created_at": "2023-05-16T22:18:41+00:00", "updated_at": "2023-05-16T22:18:41+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_16578f588f9546ec914afd2474e24ff5", "created_at": "2025-03-07T16:46:20Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109505657", "updated_at": "2025-03-07T16:46:20Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_f7b53f1e1fc34b5c8d19c1e5632d86fa", "object": "CustomsInfo", "created_at": + "2025-03-07T16:46:19Z", "updated_at": "2025-03-07T16:46:19Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_28ebda7160d14ab692e6f511b48c5e0c", + "object": "CustomsItem", "created_at": "2025-03-07T16:46:20Z", "updated_at": + "2025-03-07T16:46:20Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_b21acf8efb7311ef9c71ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:19+00:00", "updated_at": "2025-03-07T16:46:19+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_ad90a97bc2774ec59f182cfe5ff223f1", - "object": "Parcel", "created_at": "2023-05-16T22:18:41Z", "updated_at": "2023-05-16T22:18:41Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_f20a001b1b1b4a40a2c02bdb83dafb9c", + "object": "Parcel", "created_at": "2025-03-07T16:46:19Z", "updated_at": "2025-03-07T16:46:19Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_dca790b9e97a43d1b054103cf4dfc2e7", - "created_at": "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:43Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T22:18:42Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_6b404afa1ac543c3a447abdcb6e5ccbb", + "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:20Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/ab9494ef0ee34c1f859a310dd5398417.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e813a2cf6d079c4ea49714758be7711be0.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_136c5eba86434379bfeacbe3a3e8a6f1", "object": - "Rate", "created_at": "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + null}, "rates": [{"id": "rate_c4f7e5ff2f4c4c1394fc750a3260755f", "object": + "Rate", "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5b67424f63314af1b997aa72d45e41be", + "object": "Rate", "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2d131482797945a4bfe126c656b838fb", - "object": "Rate", "created_at": "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_e1a21e1635784685bdeaaa435ecf2662", "object": "Rate", "created_at": - "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_e555d8dc9ddf46d2818ff3292d92129f", "object": "Rate", "created_at": - "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_2d131482797945a4bfe126c656b838fb", - "object": "Rate", "created_at": "2023-05-16T22:18:42Z", "updated_at": "2023-05-16T22:18:42Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_2b686db57fac4498b8e7c2daca08ed2e", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210420264", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T22:18:43Z", "updated_at": - "2023-05-16T22:18:43Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_2c24e761a8454f54bf34cb87869c5f2a", "carrier": "USPS", + 2, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4d1f36fa716c4b1292cacbdf19227c2d", + "object": "Rate", "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_4d1f36fa716c4b1292cacbdf19227c2d", "object": + "Rate", "created_at": "2025-03-07T16:46:20Z", "updated_at": "2025-03-07T16:46:20Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_279431562ef84af89555e5c8a2029b2f", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505657", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:20Z", + "updated_at": "2025-03-07T16:46:20Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_16578f588f9546ec914afd2474e24ff5", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzJiNjg2ZGI1N2ZhYzQ0OThiOGU3YzJkYWNhMDhlZDJl"}, - "to_address": {"id": "adr_9d5ed99bf43711eda7e3ac1f6bc539ae", "object": "Address", - "created_at": "2023-05-16T22:18:41+00:00", "updated_at": "2023-05-16T22:18:42+00:00", + "https://track.easypost.com/djE6dHJrXzI3OTQzMTU2MmVmODRhZjg5NTU1ZTVjOGEyMDI5YjJm"}, + "to_address": {"id": "adr_b215ae4ffb7311efbccbac1f6bc53342", "object": "Address", + "created_at": "2025-03-07T16:46:19+00:00", "updated_at": "2025-03-07T16:46:20+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_9d61dd38f43711eda5d7ac1f6bc53342", "object": - "Address", "created_at": "2023-05-16T22:18:41+00:00", "updated_at": "2023-05-16T22:18:41+00:00", + 4, "return_address": {"id": "adr_b21acf8efb7311ef9c71ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:19+00:00", "updated_at": "2025-03-07T16:46:19+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_9d5ed99bf43711eda7e3ac1f6bc539ae", "object": - "Address", "created_at": "2023-05-16T22:18:41+00:00", "updated_at": "2023-05-16T22:18:42+00:00", + {}}, "buyer_address": {"id": "adr_b215ae4ffb7311efbccbac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:19+00:00", "updated_at": "2025-03-07T16:46:20+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, @@ -298,17 +258,14 @@ interactions: "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_2c24e761a8454f54bf34cb87869c5f2a", - "object": "Shipment"}' + "6.07000", "charged": true, "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '8839' + - '7285' content-type: - application/json; charset=utf-8 - etag: - - W/"edef1888dadbc58ed148b9855fd6e8f7" expires: - '0' pragma: @@ -326,20 +283,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e364640142e78964da00458130 + - 6eaaf90167cb22dce2aaba22000ae079 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.846385' + - '0.666737' x-version-label: - - easypost-202305162013-ad43550112-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_buy_luma.yaml b/tests/cassettes/test_shipment_buy_luma.yaml new file mode 100644 index 00000000..73d6e3dd --- /dev/null +++ b/tests/cassettes/test_shipment_buy_luma.yaml @@ -0,0 +1,289 @@ +interactions: +- request: + body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '496' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments + response: + body: + string: '{"id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "created_at": "2025-06-12T20:30:56Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-06-12T20:30:56Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_249ad7f147cc11f0aae43cecef1b359e", "object": + "Address", "created_at": "2025-06-12T20:30:56+00:00", "updated_at": "2025-06-12T20:30:56+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_69d1bada91d041bdb6955a209eccbbdd", + "object": "Parcel", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_45ee86fffe994f5398ef78b1500270bb", + "object": "Rate", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_87538ac8330d4d909b5bdd9bb96219ed", + "object": "Rate", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_aca6cf2c8fa64031a3b863e8f1a6f1bc", + "object": "Rate", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_2497405647cc11f0aae13cecef1b359e", + "object": "Address", "created_at": "2025-06-12T20:30:56+00:00", "updated_at": + "2025-06-12T20:30:56+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_249ad7f147cc11f0aae43cecef1b359e", "object": "Address", "created_at": + "2025-06-12T20:30:56+00:00", "updated_at": "2025-06-12T20:30:56+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_2497405647cc11f0aae13cecef1b359e", "object": + "Address", "created_at": "2025-06-12T20:30:56+00:00", "updated_at": "2025-06-12T20:30:56+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "forms": [], "fees": [], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '4325' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/shipments/shp_bd34417cf07142e1a5dac80fc08b5a90 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 5339474e684b3900e2bb293a008da7d7 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb53nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq e8fe6f4ec2 + - extlb2nuq 99aac35317 + x-runtime: + - '0.223175' + x-version-label: + - easypost-202506122002-4fcd94d6be-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{"ruleset_name": "cheapest_delivery", "planned_ship_date": "2025-06-12"}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '72' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/shp_bd34417cf07142e1a5dac80fc08b5a90/luma + response: + body: + string: '{"id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "object": "Shipment", + "mode": "test", "reference": null, "to_address": {"id": "adr_2497405647cc11f0aae13cecef1b359e", + "object": "Address", "created_at": "2025-06-12T20:30:56+00:00", "updated_at": + "2025-06-12T20:30:56+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": + "179 N HARBOR DR", "street2": "", "city": "REDONDO BEACH", "state": "CA", + "zip": "90277-2506", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": + null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": + [], "details": null}, "delivery": {"success": true, "errors": [], "details": + {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, + "from_address": {"id": "adr_249ad7f147cc11f0aae43cecef1b359e", "object": "Address", + "created_at": "2025-06-12T20:30:56+00:00", "updated_at": "2025-06-12T20:30:56+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "return_address": {"id": "adr_249ad7f147cc11f0aae43cecef1b359e", "object": + "Address", "created_at": "2025-06-12T20:30:56+00:00", "updated_at": "2025-06-12T20:30:56+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_2497405647cc11f0aae13cecef1b359e", "object": + "Address", "created_at": "2025-06-12T20:30:56+00:00", "updated_at": "2025-06-12T20:30:56+00:00", + "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": false, "federal_tax_id": null, "state_tax_id": null, + "verifications": {"zip4": {"success": true, "errors": [], "details": null}, + "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, + "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "parcel": + {"id": "prcl_69d1bada91d041bdb6955a209eccbbdd", "object": "Parcel", "created_at": + "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", "length": 10.0, + "width": 8.0, "height": 4.0, "predefined_package": null, "weight": 15.4, "mode": + "test"}, "customs_info": null, "scan_form": null, "forms": [], "insurance": + null, "rates": [{"id": "rate_45ee86fffe994f5398ef78b1500270bb", "object": + "Rate", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_87538ac8330d4d909b5bdd9bb96219ed", + "object": "Rate", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_aca6cf2c8fa64031a3b863e8f1a6f1bc", + "object": "Rate", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "selected_rate": {"id": "rate_aca6cf2c8fa64031a3b863e8f1a6f1bc", + "object": "Rate", "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:56Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "luma_info": {"ai_results": [{"carrier": + "USPS", "meets_ruleset_requirements": true, "predicted_deliver_by_date": "2025-06-13", + "predicted_deliver_days": 1, "rate_id": "rate_45ee86fffe994f5398ef78b1500270bb", + "rate_usd": "34.15", "service": "Express"}, {"carrier": "USPS", "meets_ruleset_requirements": + true, "predicted_deliver_by_date": "2025-06-14", "predicted_deliver_days": + 2, "rate_id": "rate_87538ac8330d4d909b5bdd9bb96219ed", "rate_usd": "7.42", + "service": "Priority"}, {"carrier": "USPS", "meets_ruleset_requirements": + true, "predicted_deliver_by_date": "2025-06-15", "predicted_deliver_days": + 3, "rate_id": "rate_aca6cf2c8fa64031a3b863e8f1a6f1bc", "rate_usd": "6.07", + "service": "GroundAdvantage"}], "matching_rule_idx": 0, "ruleset_description": + "Buy the cheapest rate that satisfies all of the following:\nRule 0\n \nOtherwise + buy the cheapest rate"}, "postage_label": {"object": "PostageLabel", "id": + "pl_ceda993a17404090b9d046986f23a8a1", "created_at": "2025-06-12T20:30:56Z", + "updated_at": "2025-06-12T20:30:57Z", "date_advance": 0, "integrated_form": + "none", "label_date": "2025-06-12T20:30:56Z", "label_resolution": 300, "label_size": + "4x6", "label_type": "default", "label_file_type": "image/png", "label_url": + "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250612/e80efb8c8c84ed404fbd77a43e1bd75d5a.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "messages": [], "options": {"currency": "USD", "payment": {"type": + "SENDER"}, "date_advance": 0}, "is_return": null, "tracking_code": "9400100208303109973562", + "usps_zone": 4, "status": "unknown", "tracker": {"id": "trk_3814971546244ad6b45a65dbd60f550c", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109973562", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-06-12T20:30:57Z", + "updated_at": "2025-06-12T20:30:57Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_bd34417cf07142e1a5dac80fc08b5a90", "carrier": "USPS", + "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": + "https://track.easypost.com/djE6dHJrXzM4MTQ5NzE1NDYyNDRhZDZiNDVhNjVkYmQ2MGY1NTBj"}, + "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": + true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": + "6.07000", "charged": true, "refunded": false}], "refund_status": null, "batch_id": + null, "batch_status": null, "batch_message": null, "tax_identifiers": null, + "created_at": "2025-06-12T20:30:56Z", "updated_at": "2025-06-12T20:30:57Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '7274' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 5339474e684b3900e2bb293a008da825 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb59nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq e8fe6f4ec2 + - extlb2nuq 99aac35317 + x-runtime: + - '0.807856' + x-version-label: + - easypost-202506122002-4fcd94d6be-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_shipment_buy_with_carbon_offset.yaml b/tests/cassettes/test_shipment_buy_with_carbon_offset.yaml deleted file mode 100644 index 5990fac0..00000000 --- a/tests/cassettes/test_shipment_buy_with_carbon_offset.yaml +++ /dev/null @@ -1,327 +0,0 @@ -interactions: -- request: - body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 - Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": - "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, - "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": - "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": false}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '520' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/shipments - response: - body: - string: '{"created_at": "2023-05-16T16:33:59Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:34:00Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_759e6b2cf40711ed99e0ac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T16:33:59+00:00", "updated_at": "2023-05-16T16:33:59+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_61fc44884c2145e7bd694856ef569a2a", - "object": "Parcel", "created_at": "2023-05-16T16:33:59Z", "updated_at": "2023-05-16T16:33:59Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_3bd772f2c9b6439aafac36be6c8262e1", - "object": "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4f692cc924b142c9834f530229aca885", - "object": "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_590702d0d1dc45faaed73c570f862993", - "object": "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_7284d63430504e2bbff7da9ee9a6deae", "object": "Rate", "created_at": - "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_759c3386f40711ed99d2ac1f6bc72124", "object": - "Address", "created_at": "2023-05-16T16:33:59+00:00", "updated_at": "2023-05-16T16:33:59+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_759e6b2cf40711ed99e0ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T16:33:59+00:00", "updated_at": - "2023-05-16T16:33:59+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_759c3386f40711ed99d2ac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T16:33:59+00:00", "updated_at": "2023-05-16T16:33:59+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_bed157bf505f4c4a82302cc9e09619e4", - "object": "Shipment"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '5851' - content-type: - - application/json; charset=utf-8 - etag: - - W/"13668ec660a3eaf47b095929227a574e" - expires: - - '0' - location: - - /api/v2/shipments/shp_bed157bf505f4c4a82302cc9e09619e4 - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e66463b077e78733360027d4d5 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb2nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '0.890033' - x-version-label: - - easypost-202305152249-750e1e7d95-master - x-xss-protection: - - 1; mode=block - status: - code: 201 - message: Created -- request: - body: '{"rate": {"id": "rate_590702d0d1dc45faaed73c570f862993"}, "carbon_offset": - true}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '80' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/shipments/shp_bed157bf505f4c4a82302cc9e09619e4/buy - response: - body: - string: '{"created_at": "2023-05-16T16:33:59Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210342375", "updated_at": "2023-05-16T16:34:01Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_759e6b2cf40711ed99e0ac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T16:33:59+00:00", "updated_at": "2023-05-16T16:33:59+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_61fc44884c2145e7bd694856ef569a2a", - "object": "Parcel", "created_at": "2023-05-16T16:33:59Z", "updated_at": "2023-05-16T16:33:59Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_28c069a20da94e7b891555d9d01bbda2", - "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:01Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:34:00Z", - "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/164e24cfdd1a4d289d0f343086555e8f.png", - "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_3bd772f2c9b6439aafac36be6c8262e1", "object": - "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_4f692cc924b142c9834f530229aca885", - "object": "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_590702d0d1dc45faaed73c570f862993", - "object": "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "carbon_offset": {"object": "CarbonOffset", "grams": 36, "price": "0.11", - "currency": "USD"}}, {"id": "rate_7284d63430504e2bbff7da9ee9a6deae", "object": - "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}], "refund_status": null, - "scan_form": null, "selected_rate": {"id": "rate_590702d0d1dc45faaed73c570f862993", - "object": "Rate", "created_at": "2023-05-16T16:34:00Z", "updated_at": "2023-05-16T16:34:00Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_1c719471026e4f858de8762ac10884f4", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210342375", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T16:34:01Z", "updated_at": - "2023-05-16T16:34:01Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", "carrier": "USPS", - "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzFjNzE5NDcxMDI2ZTRmODU4ZGU4NzYyYWMxMDg4NGY0"}, - "to_address": {"id": "adr_759c3386f40711ed99d2ac1f6bc72124", "object": "Address", - "created_at": "2023-05-16T16:33:59+00:00", "updated_at": "2023-05-16T16:34:00+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_759e6b2cf40711ed99e0ac1f6bc72124", "object": - "Address", "created_at": "2023-05-16T16:33:59+00:00", "updated_at": "2023-05-16T16:33:59+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_759c3386f40711ed99d2ac1f6bc72124", "object": - "Address", "created_at": "2023-05-16T16:33:59+00:00", "updated_at": "2023-05-16T16:34:00+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}, {"object": "Fee", "type": - "CarbonOffsetFee", "amount": "0.11000", "charged": true, "refunded": false}], - "id": "shp_bed157bf505f4c4a82302cc9e09619e4", "object": "Shipment"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '8401' - content-type: - - application/json; charset=utf-8 - etag: - - W/"27f575aeca647b9007448e81852a218c" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e66463b078e78733360027d524 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb5nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '1.194118' - x-version-label: - - easypost-202305152249-750e1e7d95-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/test_shipment_buy_with_end_shipper_id.yaml b/tests/cassettes/test_shipment_buy_with_end_shipper_id.yaml index d47a4cfa..adaca89c 100644 --- a/tests/cassettes/test_shipment_buy_with_end_shipper_id.yaml +++ b/tests/cassettes/test_shipment_buy_with_end_shipper_id.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/end_shippers response: body: - string: '{"id": "es_9436e2c633524a3285266b3b88840d7f", "object": "EndShipper", - "mode": "test", "created_at": "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:55+00:00", + string: '{"id": "es_184c211535024ac78c9e8e67e0cbbb74", "object": "EndShipper", + "mode": "test", "created_at": "2025-03-07T16:46:31+00:00", "updated_at": "2025-03-07T16:46:31+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": ""}' @@ -34,8 +34,6 @@ interactions: - '365' content-type: - application/json; charset=utf-8 - etag: - - W/"fdac6bcfce7c4b28af0397db86c11466" expires: - '0' pragma: @@ -53,20 +51,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e46463affbe7872fa10027ab77 + - 6eaaf8fd67cb22e7e2aabd7d000af196 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.044325' + - '0.053726' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -79,7 +77,7 @@ interactions: "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": false}' + 15.4}}}' headers: Accept: - '*/*' @@ -88,7 +86,7 @@ interactions: Connection: - keep-alive Content-Length: - - '520' + - '496' Content-Type: - application/json authorization: @@ -99,95 +97,73 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:55Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:55Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_2b9b0a33f40711ed87f1ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:55+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_d720efccb2864509b7c0d9ca5236fda8", "created_at": "2025-03-07T16:46:31Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:46:31Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_b913a77dfb7311ef80faac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:31+00:00", "updated_at": "2025-03-07T16:46:31+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_461560bd4e2c44c58fde701ae5274a63", - "object": "Parcel", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_edcaa2741fd849179d75040cdd668e56", + "object": "Parcel", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_6901e6a3790546ff91679ad2e1d659ff", - "object": "Rate", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c4810533818d48638f4e323b280d4cfe", - "object": "Rate", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_5a302bf1871b469c985e226c0d2bb372", + "object": "Rate", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_91720658907244019d48d70842485177", - "object": "Rate", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_397effc556b14681b2f7e8aa487ab06a", "object": "Rate", "created_at": - "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_2b989604f40711edb8893cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:55+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_2b9b0a33f40711ed87f1ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T16:31:55+00:00", "updated_at": - "2023-05-16T16:31:55+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ce06a84e13274a21abdb92d00840045c", + "object": "Rate", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_66b3776de08c469386e8629da89eca72", + "object": "Rate", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b910ea0efb7311efa662ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:31+00:00", "updated_at": + "2025-03-07T16:46:31+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_2b989604f40711edb8893cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:55+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b913a77dfb7311ef80faac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:31+00:00", "updated_at": "2025-03-07T16:46:31+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b910ea0efb7311efa662ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:31+00:00", "updated_at": "2025-03-07T16:46:31+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_9fd8372a9e274d25bb150a4c480733dc", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '5851' + - '4325' content-type: - application/json; charset=utf-8 - etag: - - W/"8ca60ac0732c5a2dee30785e020f4c35" expires: - '0' location: - - /api/v2/shipments/shp_9fd8372a9e274d25bb150a4c480733dc + - /api/v2/shipments/shp_d720efccb2864509b7c0d9ca5236fda8 pragma: - no-cache referrer-policy: @@ -203,28 +179,28 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e46463affbe7872fa10027ab83 + - 6eaaf8fd67cb22e7e2aabd7d000af1af x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.708012' + - '0.205852' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"rate": {"id": "rate_91720658907244019d48d70842485177"}, "carbon_offset": - false, "end_shipper_id": "es_9436e2c633524a3285266b3b88840d7f"}' + body: '{"rate": {"id": "rate_ce06a84e13274a21abdb92d00840045c"}, "end_shipper_id": + "es_184c211535024ac78c9e8e67e0cbbb74"}' headers: Accept: - '*/*' @@ -233,7 +209,7 @@ interactions: Connection: - keep-alive Content-Length: - - '138' + - '114' Content-Type: - application/json authorization: @@ -241,102 +217,85 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/shipments/shp_9fd8372a9e274d25bb150a4c480733dc/buy + uri: https://api.easypost.com/v2/shipments/shp_d720efccb2864509b7c0d9ca5236fda8/buy response: body: - string: '{"created_at": "2023-05-16T16:31:55Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210341828", "updated_at": "2023-05-16T16:31:56Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_2b9b0a33f40711ed87f1ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:55+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_461560bd4e2c44c58fde701ae5274a63", - "object": "Parcel", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", + string: '{"id": "shp_d720efccb2864509b7c0d9ca5236fda8", "created_at": "2025-03-07T16:46:31Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505701", "updated_at": + "2025-03-07T16:46:32Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_b913a77dfb7311ef80faac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:31+00:00", "updated_at": + "2025-03-07T16:46:31+00:00", "name": "Jack Sparrow", "company": null, "street1": + "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": + "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_edcaa2741fd849179d75040cdd668e56", "object": + "Parcel", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_ffe1d0c74b9f4223b15ce9a32f1ab4c7", - "created_at": "2023-05-16T16:31:56Z", "updated_at": "2023-05-16T16:31:56Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:31:56Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_03eff81acc7b413ca6af27837b8617b5", + "created_at": "2025-03-07T16:46:32Z", "updated_at": "2025-03-07T16:46:32Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:32Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/7e8e1873cadb4f2690b512ae762cbb0f.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e813374500ea4847e0ad1c4777437d0b7c.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_6901e6a3790546ff91679ad2e1d659ff", "object": - "Rate", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c4810533818d48638f4e323b280d4cfe", - "object": "Rate", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + null}, "rates": [{"id": "rate_5a302bf1871b469c985e226c0d2bb372", "object": + "Rate", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_91720658907244019d48d70842485177", - "object": "Rate", "created_at": "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_397effc556b14681b2f7e8aa487ab06a", "object": "Rate", "created_at": - "2023-05-16T16:31:55Z", "updated_at": "2023-05-16T16:31:55Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_91720658907244019d48d70842485177", - "object": "Rate", "created_at": "2023-05-16T16:31:56Z", "updated_at": "2023-05-16T16:31:56Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_4f2f427fc4554663b6a6121710218198", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210341828", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T16:31:56Z", "updated_at": - "2023-05-16T16:31:56Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_9fd8372a9e274d25bb150a4c480733dc", "carrier": "USPS", + 2, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ce06a84e13274a21abdb92d00840045c", + "object": "Rate", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_66b3776de08c469386e8629da89eca72", + "object": "Rate", "created_at": "2025-03-07T16:46:31Z", "updated_at": "2025-03-07T16:46:31Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_ce06a84e13274a21abdb92d00840045c", "object": + "Rate", "created_at": "2025-03-07T16:46:32Z", "updated_at": "2025-03-07T16:46:32Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_cddf9c5b0be0443f87eefb446145d3f0", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505701", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:32Z", + "updated_at": "2025-03-07T16:46:32Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_d720efccb2864509b7c0d9ca5236fda8", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzRmMmY0MjdmYzQ1NTQ2NjNiNmE2MTIxNzEwMjE4MTk4"}, - "to_address": {"id": "adr_2b989604f40711edb8893cecef1b359e", "object": "Address", - "created_at": "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:56+00:00", + "https://track.easypost.com/djE6dHJrX2NkZGY5YzViMGJlMDQ0M2Y4N2VlZmI0NDYxNDVkM2Yw"}, + "to_address": {"id": "adr_b910ea0efb7311efa662ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:46:31+00:00", "updated_at": "2025-03-07T16:46:31+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_2b9b0a33f40711ed87f1ac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:55+00:00", + 4, "return_address": {"id": "adr_b913a77dfb7311ef80faac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:31+00:00", "updated_at": "2025-03-07T16:46:31+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_2b989604f40711edb8893cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:31:55+00:00", "updated_at": "2023-05-16T16:31:56+00:00", + {}}, "buyer_address": {"id": "adr_b910ea0efb7311efa662ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:31+00:00", "updated_at": "2025-03-07T16:46:31+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, @@ -344,17 +303,14 @@ interactions: "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_9fd8372a9e274d25bb150a4c480733dc", - "object": "Shipment"}' + "6.07000", "charged": true, "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '7968' + - '6450' content-type: - application/json; charset=utf-8 - etag: - - W/"6e089f40726e1a938ace44572c998b35" expires: - '0' pragma: @@ -372,20 +328,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e46463affbe7872fa10027abc3 + - 6eaaf8fd67cb22e7e2aabd7d000af1f8 x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.917019' + - '0.752164' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_convert_label.yaml b/tests/cassettes/test_shipment_convert_label.yaml index 8ff79903..afd5698d 100644 --- a/tests/cassettes/test_shipment_convert_label.yaml +++ b/tests/cassettes/test_shipment_convert_label.yaml @@ -11,7 +11,7 @@ interactions: "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": - "PNG", "invoice_number": "123"}, "reference": "123"}, "carbon_offset": false}' + "PNG", "invoice_number": "123"}, "reference": "123"}}' headers: Accept: - '*/*' @@ -20,7 +20,7 @@ interactions: Connection: - keep-alive Content-Length: - - '978' + - '954' Content-Type: - application/json authorization: @@ -31,106 +31,84 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:32:36Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": null, "updated_at": - "2023-05-16T16:32:37Z", "batch_id": null, "batch_status": null, "batch_message": - null, "customs_info": {"id": "cstinfo_b5d055e0c31a46419aae2adf72f0f7aa", "object": - "CustomsInfo", "created_at": "2023-05-16T16:32:36Z", "updated_at": "2023-05-16T16:32:36Z", - "contents_explanation": "", "contents_type": "merchandise", "customs_certify": - true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": - "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_5a1694f0169948fd9fd777c34fe11b03", - "object": "CustomsItem", "created_at": "2023-05-16T16:32:36Z", "updated_at": - "2023-05-16T16:32:36Z", "description": "Sweet shirts", "hs_tariff_number": - "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": - 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, - "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": - "adr_445aca48f40711ed89daac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:36+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_5f25253b03cd4bd18d27f49763f2433b", "created_at": "2025-03-07T16:46:21Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-07T16:46:21Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_84b9a1cb9e5e423aa767a26375f57055", + "object": "CustomsInfo", "created_at": "2025-03-07T16:46:21Z", "updated_at": + "2025-03-07T16:46:21Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_2034f78e08094af69a5553b9b216f5ed", "object": "CustomsItem", + "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_b31a5f20fb7311ef9cfbac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_7e9c14657c774d08ae27525a8cecb6e5", - "object": "Parcel", "created_at": "2023-05-16T16:32:36Z", "updated_at": "2023-05-16T16:32:36Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_42d5d9cb37b446629ad9c14e0a65defd", + "object": "Parcel", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_7c2821c30ca9468282ac6b5a6bc29354", - "object": "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_174dbc718dd144c3a44fd4fc093513a4", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b4fbf86b5af745aeaf44804a88d58eb7", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6cd7641821b24e768998d9c1fb8c0782", - "object": "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_7c2573955a774db6b8a623f6824bd326", "object": "Rate", "created_at": - "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_9ac91107d4394d08a896a8e36d1d9015", "object": "Rate", "created_at": - "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_4457cb1bf40711ed9bba3cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:36+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_445aca48f40711ed89daac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": - "2023-05-16T16:32:36+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2aab040e952b46db809c2b24380c674b", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b317fa6afb7311efbd57ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": + "2025-03-07T16:46:21+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_4457cb1bf40711ed9bba3cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:36+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b31a5f20fb7311ef9cfbac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b317fa6afb7311efbd57ac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_73a181c595d24125a958ea82288c2248", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6722' + - '5160' content-type: - application/json; charset=utf-8 - etag: - - W/"7184452c653ac11d166138efcb326f42" expires: - '0' location: - - /api/v2/shipments/shp_73a181c595d24125a958ea82288c2248 + - /api/v2/shipments/shp_5f25253b03cd4bd18d27f49763f2433b pragma: - no-cache referrer-policy: @@ -146,28 +124,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e76463b024e78730020027b9ed + - 6eaaf8fa67cb22dde2aaba24000ae306 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb33nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.668006' + - '0.242081' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"rate": {"id": "rate_6cd7641821b24e768998d9c1fb8c0782"}, "carbon_offset": - false}' + body: '{"rate": {"id": "rate_2aab040e952b46db809c2b24380c674b"}}' headers: Accept: - '*/*' @@ -176,7 +153,7 @@ interactions: Connection: - keep-alive Content-Length: - - '81' + - '57' Content-Type: - application/json authorization: @@ -184,113 +161,96 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/shipments/shp_73a181c595d24125a958ea82288c2248/buy + uri: https://api.easypost.com/v2/shipments/shp_5f25253b03cd4bd18d27f49763f2433b/buy response: body: - string: '{"created_at": "2023-05-16T16:32:36Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": "9400100104262210342023", - "updated_at": "2023-05-16T16:32:38Z", "batch_id": null, "batch_status": null, - "batch_message": null, "customs_info": {"id": "cstinfo_b5d055e0c31a46419aae2adf72f0f7aa", - "object": "CustomsInfo", "created_at": "2023-05-16T16:32:36Z", "updated_at": - "2023-05-16T16:32:36Z", "contents_explanation": "", "contents_type": "merchandise", - "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI - 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, - "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": - [{"id": "cstitem_5a1694f0169948fd9fd777c34fe11b03", "object": "CustomsItem", - "created_at": "2023-05-16T16:32:36Z", "updated_at": "2023-05-16T16:32:36Z", - "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": - "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": - "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": - null}]}, "from_address": {"id": "adr_445aca48f40711ed89daac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:36+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_5f25253b03cd4bd18d27f49763f2433b", "created_at": "2025-03-07T16:46:21Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109505664", "updated_at": "2025-03-07T16:46:22Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_84b9a1cb9e5e423aa767a26375f57055", "object": "CustomsInfo", "created_at": + "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_2034f78e08094af69a5553b9b216f5ed", + "object": "CustomsItem", "created_at": "2025-03-07T16:46:21Z", "updated_at": + "2025-03-07T16:46:21Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_b31a5f20fb7311ef9cfbac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_7e9c14657c774d08ae27525a8cecb6e5", - "object": "Parcel", "created_at": "2023-05-16T16:32:36Z", "updated_at": "2023-05-16T16:32:36Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_42d5d9cb37b446629ad9c14e0a65defd", + "object": "Parcel", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d9e70df4e7dd43f19726992851c722c4", - "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:38Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:32:37Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_422bd54a5bbd49469dab6d449581c9b1", + "created_at": "2025-03-07T16:46:22Z", "updated_at": "2025-03-07T16:46:22Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:22Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/71f9b103274f4befa387d119311ef73e.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8dd8fe8e5de7549e9b1766fe7097bd045.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_7c2821c30ca9468282ac6b5a6bc29354", "object": - "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + null}, "rates": [{"id": "rate_174dbc718dd144c3a44fd4fc093513a4", "object": + "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b4fbf86b5af745aeaf44804a88d58eb7", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6cd7641821b24e768998d9c1fb8c0782", - "object": "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_7c2573955a774db6b8a623f6824bd326", "object": "Rate", "created_at": - "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_9ac91107d4394d08a896a8e36d1d9015", "object": "Rate", "created_at": - "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_6cd7641821b24e768998d9c1fb8c0782", - "object": "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_e1f75c88864041ef92d1ba0fd4c9a7ed", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210342023", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T16:32:38Z", "updated_at": - "2023-05-16T16:32:38Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_73a181c595d24125a958ea82288c2248", "carrier": "USPS", + 2, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2aab040e952b46db809c2b24380c674b", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_2aab040e952b46db809c2b24380c674b", "object": + "Rate", "created_at": "2025-03-07T16:46:22Z", "updated_at": "2025-03-07T16:46:22Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_3f4c7b1064ad443e9f24161e3ec72ebf", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505664", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:22Z", + "updated_at": "2025-03-07T16:46:22Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrX2UxZjc1Yzg4ODY0MDQxZWY5MmQxYmEwZmQ0YzlhN2Vk"}, - "to_address": {"id": "adr_4457cb1bf40711ed9bba3cecef1b359e", "object": "Address", - "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:37+00:00", + "https://track.easypost.com/djE6dHJrXzNmNGM3YjEwNjRhZDQ0M2U5ZjI0MTYxZTNlYzcyZWJm"}, + "to_address": {"id": "adr_b317fa6afb7311efbd57ac1f6bc53342", "object": "Address", + "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:22+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_445aca48f40711ed89daac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:36+00:00", + 4, "return_address": {"id": "adr_b31a5f20fb7311ef9cfbac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_4457cb1bf40711ed9bba3cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:37+00:00", + {}}, "buyer_address": {"id": "adr_b317fa6afb7311efbd57ac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:22+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + "", "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": false, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, @@ -298,17 +258,14 @@ interactions: "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_73a181c595d24125a958ea82288c2248", - "object": "Shipment"}' + "6.07000", "charged": true, "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '8839' + - '7285' content-type: - application/json; charset=utf-8 - etag: - - W/"a7434d32544ee54278a2993807398061" expires: - '0' pragma: @@ -326,20 +283,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e76463b025e78730020027ba26 + - 6eaaf8fa67cb22dde2aaba24000ae378 x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.858344' + - '0.747921' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -359,100 +316,83 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_73a181c595d24125a958ea82288c2248/label?file_format=ZPL + uri: https://api.easypost.com/v2/shipments/shp_5f25253b03cd4bd18d27f49763f2433b/label?file_format=ZPL response: body: - string: '{"created_at": "2023-05-16T16:32:36Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": "9400100104262210342023", - "updated_at": "2023-05-16T16:32:38Z", "batch_id": null, "batch_status": null, - "batch_message": null, "customs_info": {"id": "cstinfo_b5d055e0c31a46419aae2adf72f0f7aa", - "object": "CustomsInfo", "created_at": "2023-05-16T16:32:36Z", "updated_at": - "2023-05-16T16:32:36Z", "contents_explanation": "", "contents_type": "merchandise", - "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI - 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, - "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": - [{"id": "cstitem_5a1694f0169948fd9fd777c34fe11b03", "object": "CustomsItem", - "created_at": "2023-05-16T16:32:36Z", "updated_at": "2023-05-16T16:32:36Z", - "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": - "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": - "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": - null}]}, "from_address": {"id": "adr_445aca48f40711ed89daac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:36+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_5f25253b03cd4bd18d27f49763f2433b", "created_at": "2025-03-07T16:46:21Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + "9400100208303109505664", "updated_at": "2025-03-07T16:46:22Z", "batch_id": + null, "batch_status": null, "batch_message": null, "customs_info": {"id": + "cstinfo_84b9a1cb9e5e423aa767a26375f57055", "object": "CustomsInfo", "created_at": + "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", "contents_explanation": + "", "contents_type": "merchandise", "customs_certify": true, "customs_signer": + "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": "return", + "restriction_comments": null, "restriction_type": "none", "mode": "test", + "declaration": null, "customs_items": [{"id": "cstitem_2034f78e08094af69a5553b9b216f5ed", + "object": "CustomsItem", "created_at": "2025-03-07T16:46:21Z", "updated_at": + "2025-03-07T16:46:21Z", "description": "Sweet shirts", "hs_tariff_number": + "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": + 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, + "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": + "adr_b31a5f20fb7311ef9cfbac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_7e9c14657c774d08ae27525a8cecb6e5", - "object": "Parcel", "created_at": "2023-05-16T16:32:36Z", "updated_at": "2023-05-16T16:32:36Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_42d5d9cb37b446629ad9c14e0a65defd", + "object": "Parcel", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d9e70df4e7dd43f19726992851c722c4", - "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:39Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:32:37Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_422bd54a5bbd49469dab6d449581c9b1", + "created_at": "2025-03-07T16:46:22Z", "updated_at": "2025-03-07T16:46:23Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:22Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/71f9b103274f4befa387d119311ef73e.png", - "label_pdf_url": null, "label_zpl_url": "https://easypost-files.s3-us-west-2.amazonaws.com/files/postage_label/20230516/ae065c1afa5a427d823f161e4250ad9b.zpl", - "label_epl2_url": null, "label_file": null}, "rates": [{"id": "rate_7c2821c30ca9468282ac6b5a6bc29354", - "object": "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8dd8fe8e5de7549e9b1766fe7097bd045.png", + "label_pdf_url": null, "label_zpl_url": "https://easypost-files.s3-us-west-2.amazonaws.com/files/postage_label/20250307/e23ee2095e0f48a1a5deefdf4dca9ea7.zpl", + "label_epl2_url": null, "label_file": null}, "rates": [{"id": "rate_174dbc718dd144c3a44fd4fc093513a4", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b4fbf86b5af745aeaf44804a88d58eb7", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6cd7641821b24e768998d9c1fb8c0782", - "object": "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_7c2573955a774db6b8a623f6824bd326", "object": "Rate", "created_at": - "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_9ac91107d4394d08a896a8e36d1d9015", "object": "Rate", "created_at": - "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_6cd7641821b24e768998d9c1fb8c0782", - "object": "Rate", "created_at": "2023-05-16T16:32:37Z", "updated_at": "2023-05-16T16:32:37Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_73a181c595d24125a958ea82288c2248", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_e1f75c88864041ef92d1ba0fd4c9a7ed", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210342023", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:32:38Z", "updated_at": - "2023-05-16T16:32:38Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:32:38Z", "shipment_id": "shp_73a181c595d24125a958ea82288c2248", + 2, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2aab040e952b46db809c2b24380c674b", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_2aab040e952b46db809c2b24380c674b", "object": + "Rate", "created_at": "2025-03-07T16:46:22Z", "updated_at": "2025-03-07T16:46:22Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_3f4c7b1064ad443e9f24161e3ec72ebf", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505664", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:22Z", + "updated_at": "2025-03-07T16:46:22Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:22Z", "shipment_id": "shp_5f25253b03cd4bd18d27f49763f2433b", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:32:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:22Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:09:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:22Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -460,9 +400,9 @@ interactions: {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrX2UxZjc1Yzg4ODY0MDQxZWY5MmQxYmEwZmQ0YzlhN2Vk"}, - "to_address": {"id": "adr_4457cb1bf40711ed9bba3cecef1b359e", "object": "Address", - "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:37+00:00", + null}, "public_url": "https://track.easypost.com/djE6dHJrXzNmNGM3YjEwNjRhZDQ0M2U5ZjI0MTYxZTNlYzcyZWJm"}, + "to_address": {"id": "adr_b317fa6afb7311efbd57ac1f6bc53342", "object": "Address", + "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:22+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -470,14 +410,14 @@ interactions: "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_445aca48f40711ed89daac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:36+00:00", + 4, "return_address": {"id": "adr_b31a5f20fb7311ef9cfbac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_4457cb1bf40711ed9bba3cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:32:36+00:00", "updated_at": "2023-05-16T16:32:37+00:00", + {}}, "buyer_address": {"id": "adr_b317fa6afb7311efbd57ac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:22+00:00", "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -487,17 +427,14 @@ interactions: "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_73a181c595d24125a958ea82288c2248", - "object": "Shipment"}' + "6.07000", "charged": true, "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '10086' + - '8528' content-type: - application/json; charset=utf-8 - etag: - - W/"9472e327a8b068d93fddef9f3c363542" expires: - '0' pragma: @@ -515,20 +452,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e76463b026e78730020027ba70 + - 6eaaf8fa67cb22dee2aaba24000ae486 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.537237' + - '1.356256' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_create.yaml b/tests/cassettes/test_shipment_create.yaml index 1c86bc05..4ea68e19 100644 --- a/tests/cassettes/test_shipment_create.yaml +++ b/tests/cassettes/test_shipment_create.yaml @@ -11,7 +11,7 @@ interactions: "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": - "PNG", "invoice_number": "123"}, "reference": "123"}, "carbon_offset": false}' + "PNG", "invoice_number": "123"}, "reference": "123"}}' headers: Accept: - '*/*' @@ -20,7 +20,7 @@ interactions: Connection: - keep-alive Content-Length: - - '978' + - '954' Content-Type: - application/json authorization: @@ -31,106 +31,84 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:26Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": null, "updated_at": - "2023-05-16T16:31:27Z", "batch_id": null, "batch_status": null, "batch_message": - null, "customs_info": {"id": "cstinfo_994a2568673740cba69fb9c41726d6c3", "object": - "CustomsInfo", "created_at": "2023-05-16T16:31:26Z", "updated_at": "2023-05-16T16:31:26Z", - "contents_explanation": "", "contents_type": "merchandise", "customs_certify": - true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": - "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_ae6bbbd3195c42c6b1879d3b253f0264", - "object": "CustomsItem", "created_at": "2023-05-16T16:31:26Z", "updated_at": - "2023-05-16T16:31:26Z", "description": "Sweet shirts", "hs_tariff_number": - "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": - 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, - "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": - "adr_1a99cd8af40711edb1d4ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:26+00:00", "updated_at": "2023-05-16T16:31:26+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_4f5381cd729d48c2adc4d2d801d655e2", "created_at": "2025-03-07T16:46:17Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-07T16:46:17Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_97b059fb952a4d8b87e3f5f1cb89878f", + "object": "CustomsInfo", "created_at": "2025-03-07T16:46:17Z", "updated_at": + "2025-03-07T16:46:17Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_08483c42308243d8b47c9b2fd67e2405", "object": "CustomsItem", + "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_b07ddf8cfb7311ef9ba7ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_440119c05e614c7fb3d544380c235c43", - "object": "Parcel", "created_at": "2023-05-16T16:31:26Z", "updated_at": "2023-05-16T16:31:26Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_32603eb873f14a7ca8dd2c9593c756d2", + "object": "Parcel", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_122aaef1a4ae4e5c8cb7605ea01cb569", - "object": "Rate", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_3672644215a9461b8eb342a3f219f0ac", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6fc92da586f54f68a537f6d2ba0eb89f", - "object": "Rate", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_3672644215a9461b8eb342a3f219f0ac", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b29b1808b8bd47b2b8b351d05a541abb", - "object": "Rate", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_c8501931eb2b4c1fb25e1af7f3286bf4", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_4f5381cd729d48c2adc4d2d801d655e2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e10ea4fea5ba4d98a1a4135fe54737d7", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_3672644215a9461b8eb342a3f219f0ac", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e8f47c58258e4ff6ab88c74917e2c79a", - "object": "Rate", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3672644215a9461b8eb342a3f219f0ac", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_1a959c8df40711ed96783cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:31:26+00:00", "updated_at": "2023-05-16T16:31:26+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_1a99cd8af40711edb1d4ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T16:31:26+00:00", "updated_at": - "2023-05-16T16:31:26+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_4f5381cd729d48c2adc4d2d801d655e2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_96763f5dc32548538c44e7c479243e38", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_4f5381cd729d48c2adc4d2d801d655e2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b0798197fb7311efa15bac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": + "2025-03-07T16:46:17+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_1a959c8df40711ed96783cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:26+00:00", "updated_at": "2023-05-16T16:31:26+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b07ddf8cfb7311ef9ba7ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b0798197fb7311efa15bac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_3672644215a9461b8eb342a3f219f0ac", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6722' + - '5160' content-type: - application/json; charset=utf-8 - etag: - - W/"48d191271c9a5d4f6d2f8f7f010b54fe" expires: - '0' location: - - /api/v2/shipments/shp_3672644215a9461b8eb342a3f219f0ac + - /api/v2/shipments/shp_4f5381cd729d48c2adc4d2d801d655e2 pragma: - no-cache referrer-policy: @@ -141,27 +119,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e26463afdee7872f570027a1bc + - 6eaaf8ff67cb22d9e2aaba1e000adc25 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.603554' + - '0.266061' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_create_and_buy_luma.yaml b/tests/cassettes/test_shipment_create_and_buy_luma.yaml new file mode 100644 index 00000000..68b7e074 --- /dev/null +++ b/tests/cassettes/test_shipment_create_and_buy_luma.yaml @@ -0,0 +1,125 @@ +interactions: +- request: + body: '{"shipment": {"to_address": {"name": "Jack Sparrow", "street1": "388 Townsend + St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", + "country": "US", "email": "test@example.com", "phone": "5555555555"}, "from_address": + {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", + "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}, "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], "carrier": + "USPS", "ruleset_name": "cheapest_delivery", "planned_ship_date": "2025-06-12"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '648' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments/luma + response: + body: + string: '{"id": "shp_5d4198306993451896ff04c456ccd4ff", "object": "Shipment", + "mode": "test", "reference": null, "to_address": {"id": "adr_240c833d47cc11f0aa843cecef1b359e", + "object": "Address", "created_at": "2025-06-12T20:30:55+00:00", "updated_at": + "2025-06-12T20:30:55+00:00", "name": "JACK SPARROW", "company": null, "street1": + "388 TOWNSEND ST APT 20", "street2": "", "city": "SAN FRANCISCO", "state": + "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": + "", "mode": "test", "carrier_facility": null, "residential": true, + "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": + true, "errors": [], "details": null}, "delivery": {"success": true, "errors": + [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": + "America/Los_Angeles"}}}}, "from_address": {"id": "adr_240f71b247cc11f0aa873cecef1b359e", + "object": "Address", "created_at": "2025-06-12T20:30:55+00:00", "updated_at": + "2025-06-12T20:30:55+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "parcel": {"id": "prcl_d3cf84f93a9a4f4098ba288f420f23d2", + "object": "Parcel", "created_at": "2025-06-12T20:30:55Z", "updated_at": "2025-06-12T20:30:55Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "customs_info": null, "forms": [], "insurance": null, + "selected_rate": {"id": "rate_c96972f3a89b426d9cf1589da0090adb", "object": + "Rate", "created_at": "2025-06-12T20:30:55Z", "updated_at": "2025-06-12T20:30:55Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_5d4198306993451896ff04c456ccd4ff", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "luma_info": {"ai_results": [{"carrier": + "USPS", "meets_ruleset_requirements": true, "predicted_deliver_by_date": "2025-06-15", + "predicted_deliver_days": 3, "rate_id": "rate_2380bfac8dc641e592153c3ddedea48a", + "rate_usd": "7.42", "service": "Priority"}, {"carrier": "USPS", "meets_ruleset_requirements": + true, "predicted_deliver_by_date": "2025-06-15", "predicted_deliver_days": + 3, "rate_id": "rate_d2a22657e8db4958886c3c8184b73fd5", "rate_usd": "6.07", + "service": "GroundAdvantage"}, {"carrier": "USPS", "meets_ruleset_requirements": + true, "predicted_deliver_by_date": "2025-06-13", "predicted_deliver_days": + 1, "rate_id": "rate_bc38780a225c425f9a9ed58fdec2029a", "rate_usd": "34.15", + "service": "Express"}], "matching_rule_idx": 0, "ruleset_description": "Buy + the cheapest rate that satisfies all of the following:\nRule 0\n \nOtherwise + buy the cheapest rate"}, "postage_label": {"object": "PostageLabel", "id": + "pl_4ae25651ce484b389318a542db94e242", "created_at": "2025-06-12T20:30:55Z", + "updated_at": "2025-06-12T20:30:55Z", "date_advance": 0, "integrated_form": + "none", "label_date": "2025-06-12T20:30:55Z", "label_resolution": 300, "label_size": + "4x6", "label_type": "default", "label_file_type": null, "label_url": null, + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + "iVBORw0KGgoAAAANSUhEUgAABLAAAAcICAAAAAAJO2eWAAAI+GlDQ1BkZWZhdWx0X2dyYXkuaWNjAABIiZ2VeTTU/R7Hv7/fb/bFMjPGzljHkjXLIMsY21iyr6lo7FuMXUpJKpSSZCuRCEWbJW2SUhFRaH9GHqE8pUUqlUfde869597Tuefc1zmf83798f2c8znvf74A4CvBMrAIALFxSXx7D7a/n38AA/wbwbzEeLabmzP4LZ9GAfQz72v9/s1vQYeEJvKWs2t5NvPi+UkAQFbLrpaaFP/TI5adtiH6l2f+9GgvD86y7wMAR/rn7k+U2PykyLDQNIbnxrCk1GB+KCPRnh+czuByOAw3/sawyJjQ/+O6/0FSaFrSz+RsjE/nR4ZHJDH+6wp9XT0W+FenH7x+dQXRB/+z55/wkvkp/zDUr24AAQgDGpAEckAJqAEtoA+MgRmwArbAEbgCL+AP1gEeiACxgA9SQSbYBnJBPtgHDoJyUAVqQQNoBmdBO7gEroGboA/cAyPgCRCASfAazIFPYBGCICxEhqiQJCQPqUCakD7EgiwgW8gZ8oD8oSAoHIqDkqFMaDuUDxVB5VA11ACdgS5A16Db0BD0CBqHZqD30FcYgUkwDZaFVWEdmAWzYSfYC14Lh8MJcAacA++FS+Ea+CTcBl+D++ARWAC/hucRgBAROqKAaCEshIO4IgFIGMJHtiB5SAlSgzQjnUgvch8RILPIFxQGRUUxUFooM5QDyhvFQyWgtqAKUOWoE6g2VA/qPmocNYf6gSajZdCaaFM0F+2HDkenonPRJeg6dCv6BnoEPYn+hMFg6BgmxhjjgPHHRGE2YQowhzEtmC7MEGYCM4/FYiWxmlhzrCs2GJuEzcWWYU9ir2KHsZPYzzgiTh6nj7PDBeDicNm4Elwj7gpuGDeFW8SL4FXwpnhXfAg+HV+Ir8V34gfxk/hFgiiBSTAneBGiCNsIpYRmwg3CU8IHIpGoSDQhuhMjiVuJpcTTxFvEceIXEoWkQeKQAknJpL2kelIX6RHpA5lMViVbkQPISeS95AbydfJz8mchqpC2EFcoRChLqEKoTWhY6I0wXlhFmC28TjhDuET4nPCg8KwIXkRVhCMSLLJFpELkgsiYyLwoVVRP1FU0VrRAtFH0tug0BUtRpdhSQig5lGOU65QJKkJVonKoPOp2ai31BnWShqExaVxaFC2fdoo2QJsTo4gZiPmIpYlViF0WE9ARuiqdS4+hF9LP0kfpX8VlxdnioeK7xZvFh8UXJKQlrCRCJfIkWiRGJL5KMiRtJaMl90u2Sz6TQklpSLlLpUodkbohNStNkzaT5knnSZ+VfiwDy2jIeMhskjkm0y8zLysnay8bL1sme112Vo4uZyUXJVcsd0VuRp4qbyEfKV8sf1X+FUOMwWbEMEoZPYw5BRkFB4VkhWqFAYVFRaait2K2YoviMyWCEkspTKlYqVtpTlle2UU5U7lJ+bEKXoWlEqFySKVXZUGVqeqrulO1XXWaKcHkMjOYTcynamQ1S7UEtRq1B+oYdZZ6tPph9XsasIahRoRGhcagJqxppBmpeVhzaAV6hcmKuBU1K8a0SFpsrRStJq1xbbq2s3a2drv2Gx1lnQCd/Tq9Oj90DXVjdGt1n+hR9Bz1svU69d7ra+jz9Cv0H6wkr7RbmbWyY+U7A02DUIMjBg8NqYYuhjsNuw2/Gxkb8Y2ajWaMlY2DjCuNx1g0lhurgHXLBG1ibZJlcsnki6mRaZLpWdO3Zlpm0WaNZtOrmKtCV9WumjBXNA82rzYXWDAsgiyOWggsFSyDLWssX1gpWYVY1VlNsdXZUeyT7DfWutZ861brBY4pZzOnywaxsbfJsxmwpdh625bbPrdTtAu3a7Kbsze032Tf5YB2cHLY7zDGleXyuA3cOUdjx82OPU4kJ0+ncqcXzhrOfOdOF9jF0eWAy9PVKqvjVre7Aleu6wHXZ25MtwS3i+4Ydzf3CveXHnoemR69nlTP9Z6Nnp+8rL0KvZ54q3kne3f7CPsE+jT4LPja+Bb5Cvx0/Db79flL+Uf6dwRgA3wC6gLm19iuObhmMtAwMDdwdC1zbdra2+uk1sWsu7xeeH3w+nNB6CDfoMagb8GuwTXB8xu4Gyo3zPE4vEO81yFWIcUhM6HmoUWhU2HmYUVh0+Hm4QfCZyIsI0oiZiM5keWR76IcoqqiFqJdo+ujl2J8Y1picbFBsRfiKHHRcT0b5TambRyK14zPjRckmCYcTJjjO/HrEqHEtYkdSbTlD6o/WS15R/J4ikVKRcrnVJ/Uc2miaXFp/eka6bvTpzLsMo5vQm3iberOVMjcljm+mb25egu0ZcOW7iylrJysya32W09sI2yL3nY3Wze7KPvjdt/tnTmyOVtzJnbY72jKFcrl547tNNtZtQu1K3LXwO6Vu8t2/8gLybuTr5tfkv+tgFdwZ4/entI9S3vD9g4UGhUe2YfZF7dvdL/l/hNFokUZRRMHXA60FTOK84o/Hlx/8HaJQUnVIcKh5EOCUufSjjLlsn1l38ojykcqrCtaKmUqd1cuHA45PHzE6khzlWxVftXXo5FHH1bbV7fVqNaUHMMcSzn2stantvc463hDnVRdft33+rh6wQmPEz0Nxg0NjTKNhU1wU3LTzMnAk/dO2ZzqaNZqrm6ht+SfBqeTT786E3Rm9KzT2e5zrHPN51XOV7ZSW/PaoLb0trn2iHZBh3/H0AXHC92dZp2tF7Uv1l9SuFRxWexy4RXClZwrS1czrs53xXfNXgu/NtG9vvvJdb/rD3rcewZuON24ddPu5vVedu/VW+a3Lt02vX3hDutOe59RX1u/YX/rXcO7rQNGA22DxoMd90zudQ6tGroybDl87b7N/ZsPuA/6RlaPDI16jz4cCxwTPAx5OP0o5tG7xymPF59sfYp+mvdM5FnJc5nnNX+o/9EiMBJcHrcZ73/h+eLJBG/i9Z+Jf36bzHlJflkyJT/VMK0/fWnGbubeqzWvJl/Hv16czf1L9K/KN2pvzr+1ets/5zc3+Y7/bul9wQfJD/UfDT52z7vNP/8U+2lxIe+z5OcTX1hfer/6fp1aTP2G/Vb6Xf175w+nH0+XYpeW/gYv3m/g6otvwAAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAB10RVh0U29mdHdhcmUAR1BMIEdob3N0c2NyaXB0IDkuMjcvl14hAAAgAElEQVR4nOy9vXLjOrr3+/epfQHmXIGHfQGnd7Hz46mi4ncldDqehA6nJ6Ky9sqkaNaEUtK9UzGYvWOxyv3mZq11LkB0nxsw+70CnAD8wBdJkCIl0X5+QbdFAA9AiPwLHw8AgCAIgiAIghiXK4Cduwwz4QpUVwRxTq7wf527CARBELaQYBEEMRtIsAiCmA0kWARBzAYSLIIgZgMJFkEQs4EEiyCI2UCCRRDEbCDBIghiNpBgEQQxG0iwCIKYDSRYBEHMBhIsgiBmAwkWQRCzgQSLIIjZQIJFEMRsIMEiCGI2kGARBDEbSLAIgpgNJFgEQcwGEiyCuGy+/8W5+sv3c5fiQqBTc6yhU3OIM/Djb98BAPdfbs5ajovgigTLHhIs4uT8/NdvP8u/SbJIsPpAgkWcmn89/hQ+3Xz++9lKchmQYPWABIs4Ld//9kO5cvP413MU5GIgweoBCRZxSr7/+t1w9eO/b05cjkuCTn4miIvk59/ME4N//Flrdr0rLqiFlSBPAaTiNdcB4AP+eYokQS0s4lSIY+06j3+9OVlJLouL6BKmeYI0Tztiua7ruO45hYsEizgR3/7RIld4x0NZ5xasJM3SLqWScTzP9byJitMOCRZxEsyDVzLvVLLOKFhZkiX9tErA9zzPHbM0NpBgESegdBTt4pd/3kxajovkTIKVJ0mSHWvE9b3AGaM0tpBgEZPz89ffrOO+Q0fScwhWFifJWLY8Pzhd95AEi5iY9rF2jevPXyYrymVycsHKtsP7gWacwA/GtdgECRYxLf/9jx89U7y3oazTCla+jUdWK44ThKdoZ5FgEVPyxz++D0h183QzcjnOy7f/DQDX/zSHnlKw4jiezrgbBpMPwh8hWHkKwKlVNcsAuG4dnADwPWFILgG491lWDfY53arcEdmQj06aA6ijVAVpspHpo5FS5mkOQLjb4rMYh5sQMqkyzVMxaSOnqt8p+fGffXqDNddPH0cuyVn52zcAuHkxh14BADsBr9HkehLuJ76HY+rKAeDUH30AeC4+7Ks3NahvAWVukXiP/urQmk1rZGM+Oj4A+HpBmmxIeRY5a/aEa44ehyuFUNoq0z0ARK33XBk9Qf1OyX3Tg93F7dmKPAW8Gm4aQuWncTIO4Umm87zNpHdxTF2FALArP70CgFv8LfnCBq9CZvoLBTirtmxaIjfko8PjVa92VZAmG5aCVdo46HGKS4IuVQlsBetE9Tsl13o9WnKuEk/CPYA2wTrBWsLk4cM2nz4bIH340/IkGfXHB4RFRzEA8KmCfCFNmcaLjhvIl0v7XIXIffN5MJnraUOmuHvDDPG2sNfHmsJ56ndUhnUI3x2TC1ayWGynzqMiX3+4TMkKHAhvZAoUL1S+4G+Z6/u8z5wuukyt+ziFlJF755Pp7+2AsooUJTH43xX1kh0xI3Ou+iXOwJQNvMPpF/85Fj2IQRxVVyFQj6o4ADzGWNkhCZ4Zq8ZaoiqzusvCrz3z2G5zLo2RG/PRKb4xp+g8VQXpsLEHlL6gbA8B/1iObNdRn8tvrrZWZWrbJTxR/U5Jz8dcwGTt6fGXm5ubm9v7by+G0Pzr/cebm5vbz0+MMfb09PT09FTGy3+7v7m5ubn9/G9WBz7J6V/4xbzK7TPP7ZffTLmx/Ovnj4XNXAn6/fH25ubm4y+//V5cuAcAXD8Z8516DOsQDv8WjsCdZizrqLraAUAxPvJc/c1Hb8IyUgiUSoEyN+GFKt/t5ttritycj04pMEXsqiAdNjoFy63sOXLUCMW1WimqTK0F6zT1OyWDHvXqNmS+ihOH9y9K6Mt9PV52840VE3LfeOBvQtj9Szm0di0LTWGeG84fxeG3229qYV4+C+HXUmnyX+qQG57wXro1dSyr4X7H4TU66coZEW+KGcPj6spB9ZJGQDEnFgLSW+4CxduDMjfpheKfgsZMmiI356NTtYl5HVYF6bDRLlheecd7FJ21OqoDwJNaSAME6zT1OyVDn/XrL6olzTPrUQr+TR7ef5QE6162/Y098r9+Ey0UKe7Nud28SNk9qrMJdWle5KQ3uVaAUwrW7uSrk0XC5mmwoRxXVyEA8EJ5KHssDiBMyBXtBLfMzPBCvaK1FE2Rm/PR8QHARfmi29poF6wIxSReBGAlReVto51U8ipTe8E6Sf1OycAHXWs/McNixM91aH6vBhaC8o0xVspTxVMpTpLvxOcy0Jzb9b+F7G718F+K5lp+I1+/Yex8gnWGwSsZZ9ddyH4cV1c7oOhsvAJFj2UPlK9WgQPwxgHK3OQXir/+je3Hhsgt+ej4ALBxytKWBemy0S5Yu7JcAQA5asjNSJ5U1d3bC9ZJ6ndKBj3lt0+anUdTvPsq+BdTMMAFS3XXvGWM3fI/X4QsbgAUYmJeql11C3OjU+vH3FjSr4x1C9ZEs4TrT+eea8nv7i5qvjBwUExf1ZPuqhe5Oj1vwOuKYIrcPx83BCBNuA4oq4DjFhYSbffYGIDnIgCQH+HZcI76PTc3T0+36rVvj1Xo7W3VG/v2r+KPX/+7zWAZ6+aWC80XAMVBPf9Vx/r+AwDwC4Afn412Pv9R/PGPP0zBf/zKC8U/XX/k5by5bytaySSClS0uwbkg/jDhWqD+BCjepRSAsJuXNNDnlhFa6VW5ZeR++UQukK/VqwPKWuDzqFleaELFNgcQFFJyzK/cuer3bFx/ebnVLv74tQp8eXrKX+6L648/AAB/PBafb7/mjOVP91JifAcA3Dy9PP3+8vUGt7cACtUTmlKFdv0dwN/qsjDGfv96wz/+LK5/+1Zm95Qzlv+7zO6376h0768vvz/lv9/fQNp54vPj4+Pj46Ouh1MI1vbszStOfvdwQY9etTQuRunVmALq+zsJA/JxIgBrwWnqyLJ6ABKuSLKRBAAC1ZNqAGes37Pw95dHw9VffwAAbn5/vAGAm6/FwPZPLmT/4LGuvz7dXwPXt1/lcW+e+P4WwM39y9d/AsD1PTfwvYrF/7q9Ab4XF//68ngD4OP974XC/MFFrVDPm6en22vg+pev5Qj93wD8H/7n4zWAj1+f/nkvFOTmn1++fPny5Yt+DuP4gnVJMrFdXE7rvnwjk6JJcRR5UjJCyYyEPsz+7sMoBCuD0kfLix4h+vcJlToYtX4vntuXarJPdJH/8Q2AtIVD+ee3n6gFpm5ZyZs9/JQM3vN+4f/in/6njFS2jFC3tb6VZbn+Z6FYvwHANx7zuu643j7xmD++q+3YG3PnUmN0wUo/XVJHLP10Ojf7LgJUjYxiawkPMLp+d5MuCrRem4lB+awACHo4vKw8uQNkQCJuBAGIA069+4RqHYxZvxfO7VOtM7/+WQgoBqFEFbr5yv//L1QC8+WjHsw/AAC+yQNPt7f8aqlj3Mj1L8DPbzzVoxC72AX1j+91duJezjdFx+/Xqq/e89SysQVr/enCHpCHc60N0/ABpBkSyI0Mvb46/UF6OYyUkfvm44XQmlgDylriAwmQakNYQCFYvIV0ROP8TPU7Dbc3zWHXX+smy/c/S4fZfzckLgTnexVcdPLkYAAAF7Kf/ymLCJ9Y/Fk2sbiRX66BQti+iJ5W10VL6X+qXqQ8mF54kf7xE/9PYe4v/4UejCtY+eXIQ8W63xrd6QgcAEmWouqx6HNWCdA+6pIA9i9UGXlAPgBWjrikcJiNGrfclkpKwdcPfri6urq6yjHCPOFJ63dCbl+azpi4/lKNpOP7X/7yQwz7ySXkVknB4wI/eeRfZMuCo0M5ZPRNOq31r9zAN/7pf3jIXwH8b81AHfuPSs8URwpe+J8/cF0U88f9n3tI1qiClZ9wnbM9yeJCGn0Bik5WeXiGBwDicRypshGdRpYCcCx93KrI/fMBinH36gsdZqPGB6ALlqZPx84TnrJ+p+WzOoXHuf+9ch3/+Q/1cOhCIh6vJLgnw8+fZbDiG/W/6j/r1ta3P9fbNRctsu+8Kcet3dyiHKO/FRtYwDU3/6MMFu0DlZr+v6inBftI1piClX64nCFukfTTZZTLBxCLPRYnAABhGGoJtA8Ylz0ob19g2I1KizwgHwCFa0P5YaCNiqLDpsiF9gPXo0+o1cGI9XsJ3Hytm1Ilt0+l5wB+/vpnzWvz/7TZ+1kqyP+t5CP8/bX+8FvdVSsk519ANW71GSgVSV16w038AP4/3X6d+w/gtt4H+cf9f/5oLLjK8U66nM3Zlg524jx3F78T4Ni6KiuoWja0ByAstl0BKJzHUeYmeWJvALQ5YjdFbs5HR/D13pf1Z2Gj3dN9z5jPx9sDMWq1UUON5F7fw9OdsRPU75TI1VAsuBMEBMDNUx1dCBEu6vVZ81IGPzEZfpV7p0tuDuUamsLb/aOQxUt9+V4x97ks1SP/Q9mg4UW4QWnndr5c8Z7faWMljdfC2l6ON4NGfhnuDcXmFfVxir4PVPMCxd5xps2k+Qx+/PBQJ2rGENk2HwXpPKKBNio8vp27lCIGqj0WitU1hj5h7b+QJK3P2Gnq95Tcv9TCJDqKfv9LPcg06lFfNy+Cuf8ut5nnw1DCzF/bnIC6E2HLzoSfRX38/KtlGRs1vxdtfZMLYIQ2FnBsXRUNCmH7kgN/t5wwiorXzH2tMjNt4QthTwOdxsiN+eiIq+nK/YwtbHS2sHbc1F6M6gJiK80BePOoyrRq45W0tn4mr98pkQshbGlQKMjf65bKizCOffsi2Ghdd5OXrSNhbTJjjBW/AdX6P7EjWqx5znm373PVPvrKGCtbWL8oN1IUrlpn+Lsc/MSvlts/iG3If7PT7el+np2venC8YgFH15ULKBtRPTvmYqLMTXuh2nZrao7clI+OtPy3MGhho1OwXitTVVR1cXJYFrnKtJ9gTV6/U6IU4/NLFfJyL+mSuP+Usvj5d3713y8mqmB5t5lSQYR9rATJKuxzEboue4TX/Oqt+KHiBgDwseo9KhtkaapZS9YNO5lgXbxejaBYwNF1FQHCfnKMMfWN8spCosxNeaHc1je2JXJDPjqSYL06VUE6bHQKFlcTT4waAkKPsGiEeWy4YE1dv1Oi3umN8KLnwjiQuMPeV8VG0RL6jZkpgpVjdu65MUlXKskqmk+FqD3Jw1a35VUpaZXQtDNN1QB7ES5VkvV0KsGagV4dr1jA0XX1DAiHu3CEfQ6dqGocoMxNfKH8sOPnvy2yOR8deYOVTVWQDhvdghUCfHi7iqptclNeqDLtKVhT1++U6A/szTc9lnAI4fUXdb/hUkKU1/3l44sULCtMOYykZFaMh5emeLa3L5KBwpw86n7PL35lZVtL0qZSxeQi5sX51b9VWyTrd84YG02wZqFXLcM2dgAT7R32uot83/ej0XfwmiCfU5V1TOZRZtMT+8uLHEfcnuFel6tq2OizlOimml4sgj+KScs1fKo6VkNRjDFl76pSbcrSPAnJim4nXupEUhPr1lDCahztc5VGufESsUjDmYleAd5RigW8sSPgiEvC/MiKG4rmwvpgYfBKVJ+i0ycOU/EW1KMULLSJHkuL3xhjrDqKomoplYbFQn0tLt4Wn4VNkcv22j1j9X6AQmnK7F4YY6y+B1ZF/Kol0SrJHGTPqlspLoWw+26aAUiwiMloeGRvqldXGGsXHbL+LfWuHosYt8XcXDVC/ygFlwaE+cZvjDF2Ux0SUSjPx9LwrVCmF/Xa9W9KbkWU+7I0RYpqDeQ9Y4w91Z3eoly/1S20xzITpZKugCPO6wCA7Xh7kEzP6gjviyscXVcE0cSV9On2x4/yz5vHvwL4XjteXX+pm1rff/0uPZQ/K4/xm1+uge9/lF5QX+/14J9/fK9Tfvsr8O1vAD7eXtcb0dyXvqjf/1KXrRiCh7Ay6Pr2I/Djv8vcvjzy0vy5vHD7UcyOb2rzt29qwO8fAadMcn0N3JRZFVwBx7YadpgVR0wCAdTCIiZDfk4fX4T+38ffvt7Wn4Sxdj6ZJ5n53Xzk/Zf2YPAW1o129akyXCf8Wl661aKXBS5jPJnDnxjTN5AvxsYetStqJR1Vzaqfy6XTdBqfBQAJFjEZ8nP6KDtw1hgcsmQ7Rkn6UgU3rt75ZpIX02BXLSK3DaaEMS1jdl8ZY+pxE9V16Syd0QXrdWZ6ZZ55twMgwSImQzktkDHGfr9Rn17RUbRyyFIMvWiprr8KwarR68KT/pvhRB3xiMFq2L0WsVseSd3H+FacBtCOLSzHz/RFVl/08o8uWDPcMHvwSfYACRYxGbfSU2pe/Py1jl47ZN2qlsTZREBZvaO23G5f6oNUX75I2dWLn6UC/q5cuZVLef1P1pKdsMRIOUKjTiekGFuwZuPQIDLUfxQgwSImQ24YVXODtYaIjqLCy379YrBVn1V/8/lJD74vjd7+m7GX29vb21vedsu/VrtbXatnHhYLFQV9vC0v1LsN3v5Tdw97+VyXRnJ2bQ74+svtzc3NzY0qxkfOEq4n21/Ux3F7ubXhGTY1sYFmCYkp+fHrt/rD4xf18t9rt4afv9Y7Yd3KjbCKn3/8AHD90RyKHz9+ANe3pvGuP378BPBROwL1zz8AlNONAMpZQj5p+MePn8DHm4Yx/aI0en4///j5s6WYKldHCVb6aWhKM57rOp58SEGeIsuyfFztioZ5jpFgEdPyrTikCwAe/1693D9+/YbbL7flx5//+q3aseVGnD6cln9wkbwRJvdEwToNRwlWPuJ5E57vem3jYWmWpuOp1mHQpt0kWMTUCJLF3a84P4RtO/9b2Lv4izJaNSGFXokNrLkJ1t1I53m5vu9bTTbGaTyORAaDnMdIsIjJ+fGt3sbO1Hz6/uv36u8vnxudqsbmx9+KbO9FP4VzCBYGDyRvRimBG/UaAz+sRpmXHOQ+CtCgOzE54qyauJJQDVPm/ial8qAQ/RyEQfeTccSge/ZphB2Rg6D/hv9pvD06Z/fQHUeDWljESfghnN31+e831d/i4JUwpjU5Qqvud2ko/hwtrMF7uh+/g7sTHXYDDijxVofNsQfHZZd4HBlBAABuhI3chbNr/lWfmSoepTo1P/5WLxn8qk0dnpyhgrU+dgjciQ6rgbrjhIfNkT3D9eUemEEQ97ULZ3lm3/f//FzJ1Rfzqp1p+PGt/OvafFLiaRnYJTy2Q+iE0ZGLerbrowbgB7g2UJeQOB2iV9Yvf/35X9+rT/f/PNlYO4B6T4aP/74xhsxilnBxXAMr7HM+VBPLY8aynENvwSTBIk7Jj3+YDsE55eAVh28sc/33Ry1kPmNY26P0yt0fPQgFAKvnI47ozdfdcQjijNz8W3div3k63eBVye0tgNvfH0+dr5lBgpUftSQneh7ppEp3txverxzJiawXqXIOaJq2h7dY0g6GTRp7yJls1T4T4syIx6gC8lGqJ+QLbp/0TRfOR39viGMOTXVGPUfpMHzwvfcBKcPqqmIfAIBbHdxyCB0AwaEhPPIrVEtqSsY2HgC3YR+KQHA7UwtBXDjiQcyGU3JOw+8N13+7v7+/v2/Yfn0SMOglHLh4GADgj/2qDBZPt29Og+pKL6fLPWXLnQ+dnTlcKKliSU1Zb5phPGTjIPjJqpkQl085I3hKR9GLxfQ+dHNEj+6oUyDMbIZ2C/s29QbVVckOcKLD684vTht7dYDo+XnlwDkYwwHP3MJSUzIWAsH+sPfN1RvUd6pmQsyC32/1vV7eKYMESzvc0p5JzqkcuktzX/E8SrDc8hzXkJ91HBVHHu+Lcqjh+0ZBVVPWf/jyqaSMMbZfeYI0q5kQxLwYJFiDZ/icic7VfR44kNWzkXGMYO2rnU5fHfiMMbfskvpwXg3hm8a8lJSMBeVG9XtNhoob3TcUgiDmxZBZwu1Qh01nP9EGpd5+mGKdcH1OyvckBOB4SIA0Q1EZAfJED0eGhnajmhJ5jJDH9ff7VkcPLROCmBv9BWuoA5MzUFamM31Cz4YckIqYVp99INXDkaPhltSUSCoZgu8rrV/GxFkJLROCmBv/0TfB0AbWhHoFOPuF5pjUTZqN4b9qRehXLaYUPpBV2uECmR6ODG6+zTLPDZSWlppSULC+hSCI2dFbsIY2sHaT/rg7m8UAd8j4GIeyXriVNK7zQrBK7fDSXA9HivRDDiRYbuRunpoSAJxkGwNe0HE7WiYEMTf6dgmHNrA2E78g3pBNRM+wycx2CS8CBHV1TOHIkeZeGLjI7+RSailTYLuIAaRL2xXpZSYEMTf6CtbABlY0+YFg/oCTJbLxNqW3zHDxAKdlq9YqPAGc/fNmd1gBD52lfEC42298pIsxCkEQl0vPLuHABlYw7JyaXkRJ/4mv0/UJASBfrwFv1zhwJoS7EQIPACIssV0BRe/PM88d7n0A4V2cbsOOmJ2FIIgLp48fxLCO3WncqvtvGIOgj/2+daWycwGncJTya1N+6RIlhgs4cFlV8Xs9pV97VwG+ELMgklxQGzIhiDnQt0s4oBEDAEdsqtADt39zKT7hxgUPdxmiQ1FGYQYiNYULeMjkj1pKFMPyjt/pXdWUCUHMg36CNcxzKTqR98+AXQFP5z652MI/rATlLmWo8LjSwkt45RWNJF9P6dUi5qoxOwtBEPOil2ANO7thyHD4MPqPJA/w3hrGMkG4rwXVr7JO+GyfEi6gFFFL6YoK1qsQBDE7egnWIL064YSU33uI7VSCla0RiPXgVY07vl5GDf909alKKrtMqSnh1+3EtN2FVM2EIGZHL8Ea1CMMT/iT3ntw5lRdwhiQ2plOUI6fbeF5eriPtCjaOkPQlhKuV54BtM3a3UHVTAhidvRxaxh0ULx7ynfE9/o2mZLTeHwnYvPUDYEwzh92AB74WmY1PFzjbucDWK/hyj5sSkogusseNg6QLOG0KrZWCIKYIdZzioPOfBh1R+ROevd4eszw96orBamV6TPGWAS4UeRV22Ep4RsAXhi4KLewqpFTMsZCwPFDD8CO6dRuDXohCGJWoM9L+NpXDICenk4j0Lf/2WMXvz51ZUqraEUkFkAPL11BfH0zYymlcME1/jjUgmUoBEHMiV4Hqa6HnJVzOPGk1LLn2iHPfoP6sc8lzLYZ3KB5mDxOU8ccrqXM4izzvCNOPSOIOdDrINVPA6bUwlPPSmUfeiawlyA6SJUgzkufg1SzIS4AJ/epdvs2M2jnTYKYD/azhEN8Gk7p0lDg9ywnnSo6iKvGkHqc4Ur8ICZTo0gmDY3YKjOmt3Olz3WpDKMdVd6Gz1fiX+ZUavHUjNVyGwwx5YOhuFeQQ9pqw1TVjanUSjSkas5s8BcmYXgYmFz1Fh0Y+xbWEME6w6K1sOfCk5P5uhMEcTTWgjWkR3iGBhbQs09ILSyCmA/WXcIhDayzTFsF/dxbaSUwQcwHa8Ea0MDyzrJveP8FhQRBzATbLmE+oIVFiz8IghgVW8EaMPvvkCMjQRCjYtslHNAjVE/UIwiOOustuQ60uTJfiX9Jc+08vcG1oKaawTd4ABs8GdRU0geLvNSCNuenJhbzanXsbktlU4lKqubMpHpr81aZHtsW1oAeITWwCIIYF0vBGnAglkuD3wRBjIulYA0YwqIGFkEQI2MpWEOGsPonIQiCaGOyFpZzoqNyCIJ4P9jNEg4YwqIGFtGEOm1WL0CG8Jc66WRetNu8CttgGOLsVj2hJkaGMvt1ZUwFfSaOiWWX4kO5Y/X2qlKaF0M3rDE2r5durQ7lDmp6Vb0h1Qmxa2EN6BHSkDtBEGNDgkUQxGyYSrA88holCGJs7ASr/5g7NbAIghgdK8GiHuE4JEpFpurnhHbnIog2rGYJBxygSk4NKvE2ARBEZc1k6zgHglW5yWGyjQG4QeQAWEpStvL0CwTxTuk+Daz/Tsfe9EeUnRy7umqi2mtnwz8/F4N8TnH4aVXH7jNjTG6g7g0Xzkzr41RUlPRBT8bEwCquHK6kYnpkk1UxFjN/cWJZDalUe+ab1O7YUDYlu4ZKVE20VUfrZ3MuahFak5irHsYvrLnqDRhsM/HbsXi9LFtY/buE1CNUWG7hRX6+3eYPngcgX+SIAiTr/MFzAcRrOGHoJNsku3t2xAZqlsGFfoEg3imdstb7OOVeJ8DPBru6MnMAvFfGGHt2qpPqV4wxtq/Oqi+OpA+Vynt1lcrULpyF1scJ1MIy3kFzJaom2qqj9bM5F7UIrUnMVQ/jF3b6FpbhBhui9eL8fZbxsasrM/V58RvgwBhz4fLPPpxXxvZAxD+/OvIp8pF6qLx24Sw0f/WMBIsEy4jBNustWDazhDRJeDRptdtOAMRAmpUbSAfIEyCtqszxJCeSZO3Ih2drFwjiHWEjWP0nCWkSS6EednKAFEirOvKBFMgb6ix/QOS2XiCI94TNoHv/Fha9UgqS338OZJVAuUAGhH4VJRWbp+vMk6dotQtvAWndLtM/i380nPxs3t3XvKVynaQrlZK29XRlQ171h0aYmLJ5I+W2zZKZklHzgcxq8ax3NmbK7dWpqiwHjBsNwv6o+j6QYCk4SHKuSGkpWKVAeWkOuFWNrXNBsLI1VpId7QJBvCumGcMiwVLwgTX/a11qVom86HK7hNCEelBPWdQuEMS7wkaw+q8XIcFSCB2s1wDyu9bTPLLFA4Qx9SSB3P/TLhDE+2KaFhYNuis4O2D5p8WnP8WO1yjn+fJDAu+5rry12p7SLhDE+8L2mK9+0N4yKv6zizxJ4R+cJsGKP63hrJ7r0CRRDs/WLhDEO8Ni0L3/3jLUwNLxDmkMBB53EvHqSi3brw9bIIpEqY/hyhtNaxfeKNWMU8Pmxl1781Yx1dkt8+SdYZdk6UM9CanO5xmmJ8WZOimvKzGl+Q7VGUwogYb7VBMzPZyJUVoNiRO0XbN+DZU2OZPMElIDy4THdTwr9DwrmlI5/7xI4G9kl6utsjG+doEg3hsWXcIBZ6gOKMh7IQbc0l0UABKu78sE4d5VY4btFwjivTGJYFELSyVZLGqBCgCv6mnzRTnZGoG64iYRvLPMFwjivTHNoDuh4CbJFv+c3/kAACAASURBVACQbRE6gBMg5t4iW3geEENzCM1jtUeoXiCId8ckY1jUDlBx/WTrhUB2B+5JFcb5ww7AA18FnQDbOnIIfkmevNAuEMS7w0KwzuronvSfo+yHe5phodUif9j6aQLwkXU/WscfAiQpwhBAVnnCA/BLwZJ9rrQLBPEe6dqDpv9bMuJuWJM7dttvLgUM3w+LscK/qtwRubqzsLKtFMkrd8wq0S6ck+YKZd37YTF99ydDLM2ekr/hg/mqlLFkXvqsRqzyNpfNVB3G7Jo3nKozkqyqnxUTdaWolWS+1FpJHSUc/oUZUDOq45af1XJpTLX4mdDwDtss9YT23CrcZnAD3sszfMXPnRcI4t1BflgnQ+17urTvAkH0xGKWkJYSEgRxGVi0sOhwT2ImmJfWqB/U/nfj0hr+H2uO3Mek4fNpF7W8DWgMi3hDCKvrmtWgI5Jhw9FGY0ZTjUsdSaCOhwSLODn10mBxOW694pbp63bVdb5Qkoy2Sa9Zba5GsW5osKmaJ+34XG+M3JKoXJUtphJCjKmuGlOZ10erK8jrS/zzCZWYPN2Jt0nXlg7mRI2pmkNGy4KwgASLeEPY/NQ39wjbtYQk6xIgwSIITqeOjCY0JFmDIcEi3hJCm6lbFOQGloWIjKczpFgDIcEi3hdNUmElISMqFknWIGiWkDgt0la+V1qATUJxXmu0gSXLaBNMiIkzdfVGzF0Fkub3rKtjWCpUsar09bel7jY97ZQhCRbxpmD2Cia+WVe2Qf0Uq805awrte/uQYBFvFaMiNPlZiai+7fJZGMN0hunZkGINgMawCEJG36llNMu9h/kJhUkEa+pN9wiiEWt1aZpQNBiQLh0lM9SoOhILwaK9F4h5YpCWvr4ObRcHMZ72vU8sBIt2tyLeNurKPAMtA/Q9oTbWUdCgO3FGqhW+qBbRXglhEup0fNM6X8t5Qrt9YiZALN+VaQ0ya6kEIWmTo8fgVM1V0nqktPoFTguNYRFvF026hjeORnwVqY11BNQlJN4aVoLQaw2PwohDTzSK1ROLLiGdMjgWWZKlcJ1AncZIc6/+VUjVWY4s8+TfjEQ+AFpNoBkgrGnRuh4eqZ25kEwNZpIxrP67wL8HsnVxVuraX0mSkiyw98s4cQ4EK1GRlvFeOGltu00BNygPsFATKJ+X9VexH+9O5oPim0lC8RboOgus/9GAXuf5Yta8mXMJ2bMDwPN9F4DzLAS8utVJjs9FU6o+vZCxg3TOY3n0jvdqTKB+Fm70iKIbaK5Q1nEuoeGSVEBDgRXbEA0Z767fdctKMkUzJu22J8aQK024yyYDrVXdnG13qobM2BFfmITBUH3HzPJcwo4viTHGBvw0d2ZszZsRrIMDBAfGGDsEgPNahwQoJenVAaLn55UD5yAG14IVAsH+sPeLA1jVBNpnwPMLhhfdROt3jzbBUq8qaesozZmptrUkssWO62iK3XzL7Wm7DYoxtPtS9bglsVhpSqquZL1SMeMXJsVqLaLBipRx+bmhuhTDXZEGCNZrl01r3oxg+cBGuKmoCtgBpSRFwIoxxvblgdBsv/IgCFYV4AMHQwL1837UU7hFmiuUXZRgNRmyiNx2z61pLQy2VR0JVjOtlVpyMGffxnhvyVsRrD0Q1J9cOOWfBwdeWWFueRi9XzTB1OoMyqbZniuTmkD9vBm7J1jRXKHsAgSrs+/XYN36nlvTWhhsqzoSrGas3BoGzBJm/ZO8cbaAcNBzgLz0VXvIg3JIPc3K06GFcJE8RsgHqfz9PtATaAayC/RJYYxdXV2pTzX/fHVV7mt3pW9wVz/vPD2PcmWIOTOqG+P3Vd+YdaqriVOpVV3L0tWV9AVM/23YOI72f+hJsBTyGIEg/OF+X8wTLhNnU15Nq3WbfjHTypjUxkyAUtx839UTaAZy8nCYu5oRMjZuDV5vz3Xya1BI5TXklSNVusam+j3IqkiuWfMVK1oCzUAGN99mmecGl9fSmhSjp1PXGhRiBkzTwiLBUkjMm17kd4iC6lNWV7WH3GzISe6urq4+rY0JNAMp0g/LbbJ++BCPcBMEcXZsBKv/IFbe8LoRMuvMFXp8QqWZfyNSYLuIAaTLT7khgWYgR5p7YeAiv9uOVeZ5ULehDG0tamDNl2kEi5Y/WxGvsevZfH1AuNtvfKQLi8gJ4OyfN7vDCnh49+OKNJr1FphIsKhPaEH+gKj3oPh+E/jhPkBq0WRyo4iv6olWwDtrYhFvExvBGjDTRIJlwV3urbpjyUR8mnADWIxKuaty0WLk2MQ/CaLnwhWEKXImeiFBn2uv5uGvDJ4RmvNPm6fYkXdwPMKNMeHG6turgxtd3sRUanU0+0K1pWrJTHHVMoRw/4bmjMfCZpbQcXoPSZFgyXhAKqxgxgLeKkngLgEgBeIEoSvMxjbWXzFE7/hJIk3fpoD+WSxA8m67hMUCaJseYes5NrLKEOfBareG/n4NefruHYAkfFlCkoT3s6tWzxbwXQBZ0f02O1B5SXW52p1BSdBkoP9X+G6gzV7mhNWOowPEh94PCcdHLDRxEsCDUy5LdgHP9x1B1RLzPKHgnpUD0BK0GHh/Td7GVhA1j+aMlWDRqPvRBMBD9SHfAgG8fUEArPZ7D16l82nt0i7i1z8EKTxoCdTPn64+lUkzo8H3wVX1z4VwSWWZG9TCOg2hh6RSrGVergmUcALEfLRwC89U566HdREhg68nUD/7SIvvYZ0hMBh80wxpSbVIyTRDWNTc60/nEulBA/+7bqsTYr8lzqm2l3l2AH/PGGMHH+J+V4xF5X4M5ZYOobAVTR3KGNsBwStjbO/w3RjUBMrnA+DsGWNs5ZTbOIxF6+OEjt0aAHmZfhVQf2jNTLUtJTZnZtpjwGTf6o6HXGy4HTW2ensGG4bamHq3BjVJHSZ+aC6ieHtMSVJbGWt7GcbYgO5E1G11Qi5PsPhmoI5hx1FBkiLAjSKv2g5LDmWMhYDjhx7KHwQ1gfJ5A8ALA1fN8XiaK5RdnmBJM/EdN2Nzw8arHRcbTWn3RYLVTHOlygzYlWrkX/Se2Bf4ZILFDmGV50EKECSpKHdoDq0juE0JlM+lI70/sl7NQrDE3MS0rTdjccNdVzus6XeiV4oY1Ja+DNdTvVXBUo9INLN96I6j8nxOx4bl2jamb90YK864PIIsyVJ4TtAyiZFtM7jasTpihDjLPC9oTKB+jtPUaTU4jObBnvqhkg7tVJIxpT7VozmlilYzY4ptKbEpHes4Y7T76OeGGMaBrfbRLulmmOZECvn2DDYMtaGdxdqdbECqOkkdJn4w1oCcXo0lPQZX3a/XlaVgZR+646hEvb24R2RhPeh/SsF6Q7xdwTLGaIrQX7A0SyRYvQTL7uRnd4Bjw1mXgtBuEYQmh9Ilc0Q5svnSUT9a5NFwJJZH1Q8Ydc/O6YpFbmAXizQ2Ywivt+NVtt+th0D6b5HcSye0yKPplVLUuiL4v323SOZcifELE5UV1dAxqaRdlas7Ur+mibEUrCGnP59xewDSK6IXsgqpr+QYORjeahpfGIClYA3xOozP1y8jwSIAgyQ0aoQ2dtPUdOinMo1melsiOLYtrAFNrPx8o1jvdmcCYiiW8jGeypBeDcJSsAatRDufYNHCIAJAL1Wwikp6dW6mFKzkXD2znLqEhIlWlbCQENKrszOlYJ1t2J0aWMQAukSkzb+/Z06kV0OxFSxniGJtzzSWRIJ1wRim4Kq9klU3htrzgSlLSOqJ+MaVIDxd4wdT5GNbYHYYslFvT1yOUjsgNFZdnUQ1qe6C3JjqSvoSjKkkj5KT7IdswFawZtXEupTty4m50fwGjvZuUuvqKKwFa9B2StuzeDac0Z+CmDtGPRmrKXGWNsnbwlqw3CHrZ3PrNchjQj1CokJe62+bovljo3VzljLDboEQsBas+TSxzuj/RZydeqDHcEyYYVWJOZWgMS2p5CPLFB9Rw2fVxEnXtLwRJhasfDkk1XFQj5Ag3ip228sAAD4N8m46/bZYH3rNTdL2MoM4dnsZLbIYRd1ZRd0b5kpIK9mq4zIllhSoZG9Ir2ZkKL60FY66OUud0JAEStWoW7YY4hvyUsMNVpgYoOzs03CHqq2u71BJWe+OY+CE28sAGNjEwsmbWOfypSAIYnJ6CFbYHcVAcuoRpbOM8xMEcQp6CJYzsIl12iElamARxNulh2AN7BNmJ23ynGOUnyCIE/EfPeIG7qDWy9o/4aHD60ueIsySLIXrjH8kRBeJeX+ghssEcck0+7mpDDjtCwDcV/ssjsT+PMKSsxzzNfahW100HBN5xOmRzRXKrI750iKLUaqIairps2pOiqvGasvekF7NyFB8Q3FNp5YZkqhVoyfU4hvyMtebWglSLuJNN9yhakuN31FErVL12jbdTvlZLYdGvy7hwGH3E3YK8wHHkZ2K9NMW8HzfBZIF7X9TwcTd2cUtxiH6c9afDb6W6oskfrgS90lXwiBeld5oNaOrerlvmVe9Wli1Z3BHbXyJr8TVxNB1QfJIZYoUSb6pBikRyyLdG8SqNNeIdEn9NuTyywvYJ/b86SVY7rBRLKxPNVO4vNwR92yRIzg87/eHQ4B8cdqeKz9vmiBmTy/BGtrEwsNpWhTbM5570cVDjs3OBQB3F516keV+P/SbI4iLop9gDf2hzh9O0aJIL3iGMEkQVKKxcs95pBBBzJc+s4QAooGDROlyMyxhD/K7C54h3ALCSdjBOk98AMjjJIfjBw4AIIHnJHEGN/CBbZLDC9226wCQxBkcL6wNpNssCAHk2zSHx2doq+nALE5zwDv9PCVBjEXn0LzI4LGQwfNRtrwOewlPM0v4CgTCx8N+/8oYY3uuM3D2RQ77YiJ281q4gmzarjNWfnQ2pYFdUde7wnTwyurpwGqaNyqiX8AsoRhRtSLZM2ekfiuS1Tq4zZBawtaySLYN99VovzmX6i+1hg0FMd9hw2SdZLixeOZcmZq+bQrQcHu9KqH8zLow3Ww7wxtKm1759GfgKM1pBGsPrPSrzw7gRZEP4JnnEMBfbUIAHvzVJgCctuvs1QO8KApQKdvGAfwN9+8Io8jlN1go0wpwwigKnSr62QSr/luNwuS3hCnhEAOhxlTeVYNJqaDmvJqLoxbEWMJmk6aymgtmKELXHRritpVKzVUujyJYA74wA4YSKbdjuBvt3nq+hK+OuTAWTKtYQ0eVTyNYEbDXr7pFpWwAt8ghLGLzPwKerOk6CwsdfHbg8JaU46wK085zEWNXKZML58AYYweH3zYJFgmWWBvK18jYEV+YAUOJlNsx3I12b31fwoHOo0DRipiIwbNgZxSsXSUYEbBjjJUNp0MhYGxfCpb5+qHQr6oFB26HsU35+/DqIKyUqcovJMEiwZqnYPWbJQQQDW9iTegu+TDHWbcEKOQ/Kvd15o5urrZu03w9rgz4bmGgcJVL4HIJd0K//sL2+yN+bgjiAugtWM5wj558MZUD6Sz1Chm8ctDdA3d5bfo1MF9P67WAHvivQTEIn6Ccgljt69lJvxCvmDaRJmZKT7cGAKt4sDt5freZxIFxnnqFpNYhB0NanznyRfFnhrwwVISYp3PTJE+zy10OQBAd9Beswb5YAPAw2Fm+mfzu8o/J8YBU3LNiAW/FLxfhyTAfsrzXrWcPPLp//oOFpH17mRLCL6n7/PK/61R1QtEKg7ARr7SbsHnLZPN4i5R3bYsZ9wyWkojZMfGDubjNSdSCdG1mbtiW2HCTaj1K9WTORS2+ITsepcd268MZIFjh9oixqId0bA/S9ETrfo7Ch9SEShK4gJNX19LGzmA73qo7TkX+KYfve66L5dkFiyAGMUCwsFp0x2lkm+2GD9sbiE+y6udYHD+Js7qXlgCe1KzKMcTt1Wk5kLs0nWVVnG2OabrkBHEqeg+6A/AHbtrAST6M2CLKl5e8HkcgAOqedL4FAsBDWgwnZekgwfKQlnf/sJAWUtadvvWiyjeBV+jV8XXWNvMsTFbXH/RkUAPFKHVcMVUdxZxECm8olTiD35g9U03qjhqt1WG47+Y7tCiORfGbyt3iT2EwZE5sd7uSFQPmShFvR717A0MEC6uj2kj5p9EWKaeLuRw5EXpIKuVY5gh566iYLdi2NJVaCKojN5Jt4sohGTedxwbLdNQsMVcGCZZ7ZMdiPeyIQ43lSHZOwcbBdpEAQLbYwokA+B7WawBYrzFoG2k3xHoJAMmd4m4SFONU+V1eu255SBMASBf5CG0sgjgDQ8awjnJtAACki7DPaLGZZDkfuQK8/SJPEsdDlgHO3gWAzSJfbn0kGZxh1bFK03XsO0kK7KQAZ7PIF56fxznCSgrDNRahgyyGl6bLY391COI8mDuc7fTfO13FNayt68PhqIG0mrPs6X4oLpXHYnvPRQ4Rk/6oluaYr9e7Nbh72QBjz0UXUVyTs3GKyM/8xk+whwZBjMhw34nl8YNH/mr4rkz5eqzBq1MeVZ8lWQrPCYThpjhNHdc7QnzTOMs9o4E4TV03kIa28m2WeV4AxDF8amERc+NqsGDln0bwlw6jYdtr5evtaGMwpxQsgiCO4WrYoDsAZwz/z+2HxQAPxvThTxd9+iBBEFMxVLDgj7LwP1l86tdYyreLT/NcOUgQxNEMX/8zSqcQABBae6LGSTx224q6hAQxF4aPYQFIP41WDsfvPjkvS5KBK4RbIcEiiLlwlGAVTotj4fqu1+Q9maZpMtGmKCRYBDEXjhMs3I2+xMNzPMeDU/o7ZBnSPM2ndBAlwSKIuXCkYI03jHU+SLAIYi4Md2sAADjj7hRDEATRylGC1W//OIIgiOM4TrAQ0jEsBEGcjCMFC6tLXpF2/BJtgiAuiWMFC0esYJ6ayL/cshEEMYCjBcvZX6oqeKtB+w4TBHGxHC1YcDaXOVXobJrPJSUIYpYcL1jw9hepCytv2EbpBEFcLCMI1mUqVhgC1CUkiLfFGIJ1iYrFPcScYRsEEgRxmYwiWJenWKUPPgkWQbwlxhGsi1OsXaFU1CckiLfEsGO+dLz94oK2Ld6Uo+0XJlhZ5tkIe+I0lDtP0hTCoRXqPhb1JENTiGoBSHMIhUpz+Hpy19BSTXOreyFOgXZyuPoIaRGUR1EN1+J3Reg8u7zrebE//HykE3ieL+fxDatCHTrjnu6YL8ZYgOpws8ivkOPsfAAInvXUr1FZxU5xPJfqyl/HNYfoFhjzpTrweVQlueE0sOqkMeLcHEIHQHCoLqiPkBaBSY+iFq7F74ogfRaebN/3eSH2AQC40StTozSX0ITylB/H4VKaM6FQqM7IpxSsg/CSC0WQ4lRLnTZq6mcXfG9WAPAOjPUWLIMFxnwpL1vBenVJsC6EsqXg7IoL6iOkRWDyo6iGa/G7IsifZV+iPWOMVSuO3fIATuXBNJTQiP6+HMPrZSiWJ5ap0xPrlIIV1E/JK+CZWlgR4O1eD5EDKG2sZwfwefKNCzivuvGgMdug2YIP0VgtWO1yFIAE6zJ4dYDo+XnlwClaOMojpEVgTH4UlXAtflcE5bPQfHKBA2NsBzjR4XXnA+4r0x9+YwmN4PiXUOISVkJ70pvcuZvEyQRrv/JQPyUNinAoy//sKCV7dcWmY6gVfFU8DDplSIMFH44gdZaCtQNIsC6DCFgxxti++Ha1R0iNoD6KargWvyuCnkHBq8sDXDj81zfkMdWnq9GABo58CTXOvz+WrFes8/jEUwlWkV35RW3MtqIqxob/OIkh4pfpK33GPbQmmRrSYMGHL/zc2gnWwYFHgnUZuHD5Hz5vKGuPkBpBfRTVcC1+VwQtQUnE3659NabwyjVUffgbDWiM5tZQEp3bvUH1r7hUR6zMvM4xhVt0YgNA3DE/38IRfw02gHg8Y34HbIw98iqkxcLKwUOvOd6HPKBVT5dBmqHo1wTIE+iPkBahw4BusCNCYwbJmh+3nFaT1I6HBNrD31VCiZEFC/7zWQeyNH+wi3mv+C9ORW6exM0qhXUA0bUgyRGKt+YGSIUN9Rc5X4ukU4W0WHAjZGvL+wCAZTLKwd/ECKSV747Pnxj1EdIiKI+iGq7F74qgZ8DJHxC5AJCr7kXKw99kwMjYggX3+YybkBr8Vy9jIkAjg5uvHxZL5dxrqfhiUArIp836YgtsmTbtVl2HtFmIfKy7ftqEsqxxoTt0vEOy6hF3gQz6I6RF6DCgxe+K0JTBOvO4FIT76rVM4UN7+LtKKDGW46jAyuvXvxgPk7+9N+UZYcNJkX7IgQTLjSgjDpLcKSKogiVLryeEb9dN54EIIa0WNh+wfFZLWCO1U/M7RLZHdRNTk9US5aU59EdIi9BhQIvfFaEhg2yN4je0djtec7dk5eHvKqHE6C0sAMHhPB2x0OS7eqFNgRxp7oWBi/xOHIvygaJvtlZbx8ponFeHp0tgYxysk0OaLcCNkCrH4i4XNVLAOnNpJ/+LQXjB+aOuPkJahA4DWvyuCA0ZPMBXZWC7hBdBe/i7SigxhWDB2a/OoBORcVzlYgaxJBLA2T9vdocV8CC0gkMH6zWAXD2jNmmePsgf8oYmjxTSYgHAysPa7pDJeA063e2CaXyETkuSQPlZyxYPcDZofvitmKBLCABR8GA/JjIKTsNxGJc5huVGCDwAiLDEth5+cnYLLNdensJxU1Fg/KTxm31I4ZsHsKSQFgsAsFrgQfJvb9isP39AdJl1SgBoeYROy1ppYOXrNeDtXDQ//FZM0sIC4O5POy7r7hucVi9zSyx3VepB5EjuC/6zizxJ4R8cpUWkyE01UrmO4e6MmaghTRZ4xhESaabQqx2WxSfvLqfDKC+b5kfohCQJpBcy/rSGs3p2gZaH34apBAsIDycc6QiavSkuUrAEPFlIvMNzFEXPeydTYkFusiZFhz9ZoqGLpoQ0WiiIXKy7J0uSBO5yuVwuUyBeLvs26ImxEZ77ckRSfoQMEVoNaPG7IhgziOGKoxQPdxkigyB4ys9m9wzZRF1CAHBWwfI0/UInatFG78R9075o5fP4F5hJvVkPSKQmdsK9FPK7ps6bGtJkocRZ3eUP5qaaTPWbuAX8S/85eA9kxZdQuzcpj5Aeod2AFr8rgpYg30rP1iKBb5wWKh/+rhLWTNfCAuDtd6d4oP19W1vu0gdcGn5UYrltGDiQXLayGJ4L7hdqvns1pMlCHSFA3NlAd4R1rZ7v0+j7ual9LRN1ko0/Qi0RjAa0+F0RTBnEEHuEywTh3jyN3XELOpMKFhAczPPtI+Ks2k9GvEjB+nT1qfwzEycyk8Wi/u6kmb8Q+YPw8Q6IYOcx2m5BYONg2dUp9PYFAbDaX+yZlO+HuqdfrIBRHyEtQocBLX5XBFMGibjnY7ZGIM7gqw9/VwlVWlcbjsC0kmW56Vcjp9xepl6XWv+1klYxH8oFygfDyvf6ymuAchWpY17ybAgxWmDMr6tgVT0P3dvzRbT4+TIIygXDLt9YSXuE1AiMMenrU8O1+F0R9AxepS3UVvo6fvnhN5bQyKRjWCVhuLV08emPt+pWZP8CB7HCNe52PoD1Gm4IYLlGtAJcP9l6IZBp7R9nt8i3Kfeq2q4zeDsgWwKe2I2rmlSmEJMFmSgRqioWq40mBi+WMOZDjw/FEmLtEVIjdBnQ4ndF0DNIpI5NIi7Ud0P94e8qoUK7po3DfhL/TVfbldNE+2TleVpYbAPACwO3bAhFxW/SswN4kbwLaAGfEy73C31l+raidfHMIboFJrWw2MGBccdRw31TC+tSiAA3iryq+aw9QmqE4tq+yYAWvyuCliAEhG1ipB5W0TGQHn5jCY00PIxTcIjGHqC1k6uuLbHOJFisdDjwq6+MN6K5qBg3i9V2ZO8rWA17ugtVEIEEa3YUv8jVy649QmoEpnx9argWvyuC+tkrN7hijCljMj5j2sNvLKER4Aro3vd8JLbJiIsFvIbtVHTURXKKHevezhXGras4TR030Iett1nquQ03F6d55jraIq1euR5rgbg0sm0G6UlSHyEtQocBLX5XhK4MNNSH39LA1UkFC8jieJzNE8IzbCA3tmARBNGPUwsWRtEsLwzO4f9DgkUQ5+UMggUgj9N48I5Zvh+cybuaBIsgzst5BAsA0iRNeouW65/Tt5oEiyDOy/kECwCyNE07dxgscDzPO/NCEBIsgjgv5xUsAECepnmKFt9Oz/HguxewyJYEiyDOywUIVkmWIcsAacsK/6I2DCXBIojzckGCdfmQYBHEebmaercGgiCI8SDBIghiNpBgEQQxG0iwCIKYDSRYBEHMBhIsgiBmAwkWQRCzgQSLIIjZQIJFEMRsIMEiCGI2kGARBDEbSLAIgpgNJFgEQcwGEiyCIGYDCRZBELOBBIsgiNlAgkUQxGwgwSIIYjaQYBEEMRtIsAiCmA0kWARBzAYSLIIgZgMJFkEQs4EEiyCI2UCCRRDEbCDBIgiCIAiCIAiCIAiCIC6dK4CduwwEQRAWXNGgO0EQ84EEiyCI2UCCRRDEbCDBIghiNpBgEQQxG0iwCIKYDSRYBEHMBhIsgiBmAwkWQRCzgQSLIIjZQIJFEMRsIMEiCGI2kGARBDEbSLAIgpgNJFgEQcwGEiyCIGYDCRZBELOBBIsgiNlAgkUQxGwgwSIIYjaQYBEEMRtIsAiCmA0kWARBzIb/OHcBRiNJALihIWQJACv5WhanaQYA8DzPd00pJHzHM+babqeJPE6zBADgeJ7vNxTZsgiKRc/1Ar0clrWzRFO0bSZEy7ZKqOO5tvde5wPDndtY5nEix2Q4SQA4kW12Vje8zUw5VShPVktmFV3fv1YLAiGvjiTRg9zQ9D1nW+3SvGFvgwgAfFOIfpd75RkJng0pFJxwr1nusmNmHyiWo1djkXWCjZ1FT4tnWTs8uekufDHa3lA2N7S6ecYYY5uimIY7sbD8CgAwV4UHAJF1dlY33CY90N6flszKe+z8/k21UFI8haomA4BfXHYkY81f/fwwVfhcvFl6HgAAIABJREFUsRes10D/riM9heGBOEixuu2YOBhSOStTkU24umqyg+GNUuP1EizTy9YpWAB8W8kqq0CPb2U5AIDAZPhgNNucndUN9xOslsx4ES2+/yMFCzvRmFsEvQXeUpfQmvQh1S+uk72xiyGRfNoLvbJhduKHXL+YL5Ndd/YAkC02auN+uzRYzBaR2lWxJ10OS5t8WpneI408Lv6IWzq5LZaDGECcG2osBgBXsdqd3dAbNtCV2ZHff0WpovkW8Iusqr5zLIhi2t6hnRvvT7DyQmc834ef5nkaZwCQ3rX9rJVpF8/VQzHMzvah+MPz4TlZliX8+U0WFoIJAHhw5J/oh3K8w/fgI83TYnDDSoKbShn2GpGqWWYbi1hx9Ye9ToiWAycHEBuGZVIAUJswFtkNvmGNjsyO//4LypGvZAt4alaimLcMh82UczfzRsK2S8gfc7GPUTSboqYUjLHnTfF81BnY2NEoXjonqjuX5TiY1C0xfDGHXfGCutKIR3lxVV/dFD+4nhCxV5fQFFPvEopxnqt2X3efuBhoAmDoN9lZDhvu5tVotCU72xtWEhj65TaZWX//e/sXcy/XTNEOFQb4HMB5Q11C23q5fCxfST7KEUoRXvk7cTCnKNg40rNqZUflmT9OgTzIWvQGxFfd/MU8O+rTWL4BikysHLV0PQVLH9JuFyzG2KEQlp2aUuMAALydqMmbneXnhnreAIDbIzvbG1YSNAtWa2bW3/9xguWJ6rcDXJ8E6wKxfCWN0V6VySVjvfCnqBzrtbKjBvN+hzrCzop+pvACNnwx/IH31QuOJhLPnpJTX8Fy1ImrTsEqJV1LqbECgHAHqPNZ9pZdYz3yAW/1clt2tjesJGgWrNbMrL//4wRrJdoKgIgE6xKxfCVdwNAK2APiT7O5XkLxspUdUxFN8/G86SQ0iJq+mFAJ8ADAMXQ++LvhVM9tD8HiQ7jqJJyFYLEdAItOYVF1jqkGLS1HgGFu71V577uzs71hOUGLYLVmZv39HydYe7e+9Arg8JYE6915umeAPiwL3wWQdcyncLVIB9vJ1gAQGsaKvRAAtob5I9W+WARgmwLAyjAf5ewAIF93WjSwAYA47oqmE0QAsO64jTQD4Aa88gzujzaWw8qQSAwAnjJ8bpHd4BvWaM1shO/fjqAe+4/1Cpk3702wEqCeEhbwgEKEmuG6kA+2swYAxzh5xN22u18ZXyhCadE3OjF7EdDppG2GJzU5S3QRuUDnvFQMAEFxL7YqoVjmngtq4qSw3De74Tes0prZCN+/HSGQpVWBDH5fM+a9CRYAo6BY/Qq5SuJ+driHzso4e+3wJkNnCeTE3JGiwZFgZSMeZiIXZXugH/w2Ot678qUOHHA3oiGWA0C7uTyuQnpmN/iGVdoyG+P7t8P1yrrJkrJj8FZ4n4Kl/5auGOt0aeYIafvZiXM0r+kKoiiKbN0oK4tAtbZMx0Y8zDgbAFhbdte0PNtdFeMMgOcBvfqEquUQqJsRpWVA7wBZZTf8hntkNv7330jVJ4wL7Xw7vDfB4loy8Lc0A8qO4QA7xg5LibdarVbdv4WpkHmHReM7bQnvZZpWYHfg+FW5mqgLzftNlh0xxTL3HJDlOAH09oRddoNvuEdmY3z/lgRl825rHLeYM+9NsLjerAc9mtLr0d9Ou7zYkVZZA0hylC+yCadXC0Zm5QBIB9RS91hg3W8Leg3cKJb1UaL2HmFHdoNv2D6zMb5/S9yAZ5dmRWfz7fDuBIs/MesPAwZ3eBJ/oB3efzyy1c87gcWHVCiOCXXIrQdFH6l/88wH2sditjmAYv+bXoqqWA4cKO3HuLo8ILvBN2yd2Sjfvy0+b969uSH3dyhYxZBP9vCnB9veSMFW+onsbScDjm6fr6XdjjKgdZTfryL1J/CBIX0kB2gXLHF6lbeSLEuoWNb7hMaJW+vsht6wdWZjfP/WBAC2wPbtCda7W/zs7BZcX/LtFp7fus+aSL7mA1alWvS2kwCWk5FNZMsYpYcV0P0KeFW2A9h8yoFkbbX7gppni4DnMUqxAQI3AxDb5aFa9reQVxibeoQ9sht4w9aZ9f/+jepp98A6QYw4inO4b2wI6/0JFrz9XfW7l6Zr+L5vbqdL7fm0aEYF1QNgbUek14yN8sAmKQA49Q43XQ27o6aH3GgJYG3YvPQo5H5bsIa1YKkEbgZk9UYqxh5hj+yOv2GLzHp9JeYpHTsFCmKkWfL2GljvULDgPa9Fn+IkgRP4hi92YUorOD3Z2mlBzSKQRkhND2ywqZ/5FLD4zTZtG2VDFKdAvtx1x+zDFhDeuWANIM2GaUSwBpBUFW4c0+6T3dE33P/e2r//YwicHOs32CME3ttaQsYYY68b9afY3WgpDHjKCtkuO1r5lHV2qv2oKUCLYL4vBQ8o1731WUtY/M0XVpcL4mzWEnYXim9mUH/WFjH3sPws23Jky3bZ2d6wUgrjWsKOzPp8/y1bqqkrNU1rCRkrV5165a3QWsJZ44S71+eV2LjOHj51D51H6iZrA+0MZ71QB7Tbcjtur0m+YMW0QeZwpFlOmB3WbfFciBt85tDbE/2yO/KGx7y34wmEf98S71OwAMCL9mwvOBenH9rfbzc8GJdV9LVzHImgWB7QPiN35ET6ygWQH+1NKbIFpLcoAIY6txbiUI40GucIe2Z33A2Pem9AQzvVdo9WfoLT2xOsdziGJeD7yJOkGE/P756lQLld3nqMVasdEUXLxCFZfcRK7jHkSbIFkC8OpWzaDU4dMfS+WQDYBn0mmtqbJ3wzA0FCPT6XZiOquuVgCSAufkXEGbrB2Q244X6Z9fr+jyNYVz5hb4wTd0Onos8YlsKm+F4j6xSWdkR2QOvhTxYF4D3SKpJxuzoxOlBtzjVgDKtMxbdkthzD2rfeZdMEnZLe1rIHlNtL7QB1/1eb7GxvWE5gHMPqyqzP999jP6zX/X4v7AB22O/3r2rA835vfwTbRfOeu4QC4YE/bccOOLTacYFj1+P7ESA4S3Z5snc5lnYTOei5i0F7ng3rYjIbZzGDZaFP2LyzTK/s+t+wdWYjfP8mHN8Xz+91fd931ADPxuNmJpBgAQD4IVL50cv1W+zwR6Zx5ZxV1vx9KjtHXQuNpYWHg+i/YKXV1aLRqd1mPaHBMnd2z0sLqpPkgOyGr9DpzGyM7594b4KVLJfLpenR4rtHWT81Q+y0L7OzG6mXbPDlwM0vV1ylGEwQAMBDV7Sapo0N60ATNoJlsFwvzzHOEQ7JrvcN22c2xvdPvINBd/FRyNcAHNNwQ9CrHzDEjp8A2DbN8tj9qEstDCeIAWybTgLctm/mUNDxoqySHEitF6wkWVuefAc7uc2XPQDI487pLKPlIAaQhG09wr7Z9bzhHpmN8f0Tb0ewGvs+4pI7B+he0mLBEDvBEkC+NTsz5zaNDBU/BrA172FZTDuVuVnVjoGeC1aMO7yUcAVVpWCdQXRY72U5cHIgzlzeI1TucVh2A1foWGQ2/vf/Hnk7XUIHMLcXxGv9On7NDLHjBkDjEQ19DiCoj2JwgMYdBtYZIKzVBrprx0TkA8gt+0ip6oskYd4QShiI6m+56BMmjT3C/tn1uuE+mY32/b9r3o5g8REdw/uXVKGA66BhC19hN1ELBtnhW4Aau4y9jrepew/8sBXjj3NxREvZULCqHSMrgB+I3g1/zZs2CMjNY2pBHdbfcilYgLbX6ODsetxwv8zG+v7fO+f2rRgLD9BdccoVYqUfSgjoR9Cx8iDncqlgd73Y2VHgD7RptWHxqHc6gikL0l75AaOmcwm5BtUeOla1wwDdVygCAMcTS9TgLcUlo+nQvg1gOl2Ur7krq7KvZRcADq6h2FbZ2d5wjbkgdplZf/89/LDeF2+qXlbGZ4m/uZX73r7hmQmkF6W7XuzsKBz0o+Y5ZeOgr2AVB4zqilXolRDTqnZUP0pOPZxTXjHKyoG/dQYV5zSdis0Hfl6HWY6AoumietBaZWd7wzVmwbLLzPr7J8Fq4E3VS9HckB+m4s2tnxH+7KtPdyQ/hxb1YmVHpZjQi+QW2KHqkfUWrOJRd5RyFIu0xTfRrnaM72+9Rkm6Isc7RIW/YtNJ9bztaWgMHsQy9LV8qMp2MAV0ZWd7wzXGL9gyM+vvnwSrgbc0SwhncwcgX4RR/Qu55adjCmeNrj4BwDKJhAEHvpUneq0hG2Qn5GPH6zgMq6m9bLsGgI3VOZ7aDsSbPAaQL5OwHvFNivOqPHFrJ7vaMeJHxhGWTBjtz9OiUI66oUVFDOgzefxaCkCcPethmSeG4Xgv++w0Gm64GdvM+n3/DbMpjee6vQuu1DW2c+ahGCn1fI8PihcTNO6z8KxviwkgN3CKkWi+lSecalUxroDOerGx01xE+J7nAHlaJNqEdzEQlV46TQVIFgCcV5NF13c9AFlW+lx7yhtuUztXAHxtN6b8U2GyLFFi2twQANxd4/j9pxTCDYrws4cO7iDL5cFFK8WlwC472xuuuQKAvfKTZJkZbL//xlowZf6e4O/F28H8s+nJbfUGR0txIAg29WJhx4DRI9HZ8UGmzi4h72LIgyUNPo6+1oOyqB3AOAJXNtXKz00bzAVN/cFydP9gCuI3tRpmuewTKpYts7O94RoAWpfQNjPGLL//lg38WgYc3gENX8p8MTlRas/6s6lN7YvPm129dNsxsddT+QembB3ZWACeWB62NVjURrUYYza1A5inDIr+ZpWj4cYBv+1VioDGzQq8Oqy/5WKnumHZ2d5wDQBNM2wzY4zZff8kWA00fCkz5qA2I4zP+kZ9aPydFG5bL112rFJ5uyrTbsHiP9DqK7ZRuktuZG6QdNaOyThj5ZB9i2D5wapdqfXdiWt4R+gwzDJv6Kozb5bZ2d5wDQBNM2wzK0vc+f2TYDXwxsawAAB5nCbFCITj+U1LLJIkLR3VHd8bvtHZMDtJkpRjxX5Qik2at+8S2EoaV+XwPa955Yld7RDTMv73/064eoOCBQBIc3RvVJCnKB0Ej2KYnTTv2MZ0WDk8ix1GrWqHmJbxv/93wJsVLIIg3h5Xb2gtIUEQbx4SLIIgZgMJFkEQs4EEiyCI2UCCRRDEbCDBIghiNpBgEQQxG0iwCIKYDSRYBEHMBhIsgiBmAwkWQRCzgQSLIIjZQIJFEMRsIMEiCGI2kGARBDEbSLAIgpgNJFgEQcwGEiyCIGYDCRZBELOBBIsgiNlAgkUQxGwgwSIIYjaQYBEEMRtIsAiCmA0kWARBzAYSLIIgCIIgCIIgCIIgCOLSuQLYuctAEARhwRUNuhMEMR9IsAiCmA0kWARBzAYSLIIgZgMJFkEQs4EEiyCI2UCCRRDEbCDBIghiNpBgEQQxG0iwCIKYDSRYBEHMBhIsgiBmAwkWQRCzgQSLIIjZQIJFEMRsIMEiCGI2kGARBDEbSLAIgpgNJFgEQcwGEiyCIGYDCRZBELOBBIsgiNlAgkUQxGwgwSIIYjaQYBEEMRtIsAiCmA0kWARBzAYSLIIgZgMJFkEQs4EEiyCI2UCCRRDEbCDBIghiNpBgEQQxG0iwCIKYDSRYBEHMBhIsgiBmAwkWQRCzgQSLIIjZQIJFEMRsIMEiCGI2/EdnjET57HgA8pT/L5LmcF0gT1ULniNEET4hy6o//Y4sdavFVakYaS6ar8iTFIBfBuWpWIoEcF3BQG1QKS2yTM4ty4SUBPHmSJDAl9/NfhE6DQyBtaNG9xljbF/8L+IDEQ9S2JcxXgFgU6eIxFhBFc2UpW61uOorRdgzlX1VX8EzY4yxA4BdGXoALzbHA8Km0rIIsvlITEkQb4tdUL03m0EROg1wnqMoiqKDVZlO3CWMAb35VAUuHibJdLmocow/bQHeoKoabElZLqBoe1Wxy2CRh3ySQhLEZZF8uqtei/jhg/7WdkXoNFCyXa/X63XWGC7T3SUEILWEujpBrhQ7SYGqV7UFgDgXO21uocJpAmydVWOWpdV8WyWx642t14Af+C7SdJ3hASGAYF0LVgogy9z6Q9UeM5QWyNYrEMRbZ7mWPmaLaNUvQqeBKmTbt2ydrTBDjJYuoRqvvnjgA2CrKjQSrLwGAA4tWZoy7u4SvjpCJy8EnFfG2E7IwAHqjl8EeI2lLXqwz+Jn6hISb5FQl4mwV4ROAxVF80MfyjExdZcwuwO8SlljIAiEDpiEs3Gau4vD2ebwN+WHjY98C96IKrJKc3h1vqnQwDKW1gGm6bgSxOWwNrR6tsseEToNVDyY5aCRaQXrLodTD5dvAT8AUnN31QkA246sPZkwKAUEvNfn1BqVAKFTCVYixDaWNnSRGuudIN4M5kd8nVhH6DRQkj/07RBOKlgPKbCrfRoyOIHrNTWxYPBHOB5ZAl0gBwC/CkiAIEDOq1Icwmoo7QbYji+rBHFBVHLjrvb7VTVWvLaO0GmAk68/9B7AmlKwtltgVftgxEAINPYJkU+hWa6kWaV/hNjC8ur2ViL4XTWU1o+QU6eQeMskZUsoPES+Hx1C9XpXhE4DQJrEy8Wflv3n3CcUrHQJBMJsXwwEQAikuhMogJyHj4wHxHq1+KV/awz4CErBypQhLFNpIweJ+ktBEG+I8ie6HPzdeEpAV4ROA7j6tLgz9BAtmE6w8rsc7qb+HGdwPT5UZWpiJYsc0fh+44ELrD8slRwdr/DESgEfjoc0B6QhrMbSOhtgTc5YxNulfOCrxsZKCeiK0GngCKz8sBbih5W6JKeBhwzOTujjJUAIAH6MuHbJSAvbWQaInhrWWaZiTMP6nd0iR74GfN8XrPgpj5sAPuCniEMgF1pY5tICQBDE+cOuuUAEMWvS4ufYq3obvsuHVfLEt4nQaeAYrARLartZti6WsSI0ZY8veECWVgF5bdsXfTess8w7GpbeM59iTRI4flD2OYthqyxFAMDnjqTKEJahtACAVZLH8fidV4K4CMpmkPj7XoyNp75NhE4DxzBVlzBZA6GoQNscvgvwXpZxbiD5MInDgLt53UUeAOTx3aeiDRYAWV71AX0HMSQvrLbSuhEwYLSQIGZB+WgLvaPyz8wqQqeBY7ASLMnZ1EojszvA24hXkmpI3Rf7spWj+iFysK4VyzpL1dPdgBOsnl83oQsgXaRVIZKyRwj4yFNAWEjYUFpO5COjcXfijVKKivAy+VJQV4ROA8C+om/prLqE/bnL4UjjPHkMbPmbnwO53qVyV/4C63Cq7VqcEEjWCfKHZwCAlyANkMD1AD5S5VXy1Vna1Ses/ZH3zCCIy6BljCWxitBpAEdsODONYD2kwE7SnqLLVZIYxoB8P0Ec6ddHw/e3D0j5uJ+/Roo0L2rOB1JxCKujtF60xsNhwpISxNlxjX/2iNBpYAiTCNZ2C0SyiG6FAe08RbzRU8FLbEf07UsSIxBG0sI4QSFYQIK47AO6Xprk4hBWR2lXSZotadsG4g1SDTOZ9CZzuyN0GjiKKQQrXQK+/DpnYpMr/xPyrWE59wS4CaQpPq9qrvoJkrQeqUqR1ENY3aVdLbCmiULiDdI6Lp653RE6DRzFBLOE+V0OV3FUigGvKqoTmPu5E8y8OcqQeZ2FByRJ1Y7in8oWVndp/UhYMEUQxImYQLAeMnHJM2crLbvxgVhXp2yCtTmeI03oCct/fL4fQxEQAEm9H7xFaSMXyQh+uwRB9GF8wVrGwuKhgjQrHMc5AQxe+sldDs/Si96eUNrVYpmj9Hf3gVyYrQiEhYQ2pXVWU2yGQxBEK/2X5pT+6+KaGE8YsVoDiGM5QQwEohtZECMOZStZBqAe3DZmOYBVkuaL0PcdIEu2qbC+KYghCJYnfGourUAQUAOLIE5N/6U55ThQ25oYNUGseF4EMRI+/CZacYSGmTHLIewXKba1r/pGkqi64xcsIQpWQ2lFNgl5uxPEiTnJqTlxpoxOBepgOAAvOkwx7+Y8R3VryX+uW0o+xNVOrlvrlU1pAWdKlzGCIExcAdoxgG+OOM1ywHN9OvaUINpJytEYUReuiv/3fneETgMSjQFGrqZamnNZBOQyRRBvgpMepEoQxIXT2gvxLCJ0GjgKEiyCIGrqVTT1tWpdrWMRodPAUZBgEQRhQNAbww5XFhE6DQyBBIsgCIFy9Fvw2in/9KwidBo4BhIsgiAEylaQsL9S+adrFaHTwDGQYBEEIVC2goQeXfmnaxWh08AxkGARBCEgbBMO5U/fKkKngWMgwSIIQsAvunR5taCtPIfT8awidBo4BhIsgiBESjfrZTHylK6VgK4InQaOgASLIAiRUlbyRQwA20U5xxdaRug0cATvYi0hQRD2LKrRJ9fl+z4BAPy9bYROAzV91xKSYBEEIZF+Ml5+9mwjdBqoubzFz1kmj7VlGVxpdjNP5QhpvVdx8VH6LG6gJSSrddw0FZGnCeB4op0mQ4YISnBnQoKYM97KdF6BsItmV4ROA8OxbWEt11Gxq2iibNxXnH2abdMEvqefhLpcy/K5XCOSjtRJFnJbcZGI8fM/AdgInd8rISocP/TrbCqCUBKteJsYAhoMGXNygqBHQoKYNw9b7VK46ROh00BJ3xYWlFPhm3ARFX+p+9bt5asrNWUEwH2VPkdShL1+3vy+/rQBgEAI1urBWKywTvAqbx/62mGoKaceCQli5miHbqrvdVeETgMFZfDeHKzFtuwSbjsOXLiLAdfP0wzL3HDAaLYefOroFgDiXFo1GVbO/wmwdUrbbmC6mi5ywA18IE/jDHG2d7oM1UR1cL+EBDFnIn8p9qR8rTvXFaHTwHAshG3v1M2ifSQAeIwxFgHOrtTVg5yWv/PP4uceLawDHycS5BlSsAfgtTBbWXkN6mK8uoCzEQvjtRuScqosRqjtdyYkiPmzL3+VndDc/OmK0GmgPzaCddhFHqCqDCeC88wYe3WqV3il9ZAiwKlVoq9grYBwJSaX5YIdAGwKs7WVV6e4ylgAXsaCXX0nDYaknOSEK8uEBPEmOOz3+/3hiAidBnpi4zi6vVunDUHJGpEHIM5RjklHLrbaaTKhi3TgOclbwA/4UYFGXM90PqATlFeTGNgJrdFgBaxNxsyGhIRR0T3tm5Ag5orr+37rQQhdEToN9OYYT/f8AX4EQDiDFAhMJ8xsukfBzKQZnMD1TDYLzFuCVVe3gDyLF/kNwtO1t1jkIDOW4vhNyQiCsKNbsFaM6VODAIB15vCZylTYN8LY3vAj5A9DihcDYYMItpIXOpLHwtGpnP7GOE4g7fBDEMTpOaKFla6he10Bxtc6cpCs9cud8MNOQyBt0orUtKQyLw9JTQBPKWMIZCZjRkMifoNgdSYkCGIkjhCsJdyi8eIKr7JZWJxNvcdED+IMrscbNw2tonUOX5swTRY5IrcojeaQZhYeoyEJVz2P2jYhQRAjMXxpzjZBeaayB8SFdv3/7N3teapKw4bhO8fxNsBTArsEVglYAilBS8AStAQtIZQgJYQSpIRQgu8PvgYYPjQmOuY6f+y9gjIMJtzODDAUI8ESRUmx+RgrK1uZP7T/TKsbvMNEieVap7RIEvnNBbR1KXmu+mJ66/D6cHGvIDtbKi1aEcCd3B5Ye/nNdBPbItuXibUdG1vfpUWSjHWdClvTRXWPUIo2yrM2MMx4iw7NoLdRSlhVrbDkjDFIPlLQvJtXBPANN3cJj3k7mu2tpe0mU5GsrCfgJMmPpe2VncJjofKcqBeNnNqTZz9nmv7XXEaxME1GCvrBFQFc6+YWltHAknbFUccyUdZjkRWn6egdOv2bnytpM5wdJkrajld9BW2Rp8U+be6YaUrJj8dir/pm7Ym7KkcKmnfzigC+4dbAOuad6QMPfjmk7h9GWkKSdv+0D6+Z2aBIpGM5JlZIRduhbGdOyFZFNkxBfxeutF/7UmDpa2Ztq2uuoLH1rlsRwJ3c2iU89uY7jb8+4jj+OIcafZZPEEtXXYyVSMrSNE3TNJP9FF2ws5+XDMNydd/ycmYbPx8raG69JSsCuJMbW1hZ1k5YUInKBlA6Pmq0S7N8e0Vj5GjM3FdkZp/Q2OrGGmQKUhWSQinNuwGaFvIs7byxglr2wFqwIoA7uTGwktFHjOUTDx/brbRffo1lnkkfddgU/1NxtMxhPzN65AeZjt2MTOzXec4OQxW3rgjgXm7sEh47B2++3TYjV+lEYIWxtPwm6MS8St2L7H3CMcZzOrp3Mab9zuxS+0I+F4gCD3VbYGVFp7Hh7fd1Dh2LqTiIfaWLb+TrhmIoJcuvisjr5tA6UPFurJe9S9EtuXPcS4ytA491W2Al3eEcL1RR3ilYbCdvrPN2y6diyfJOUyjS6O05wxLT90JBWcODp2zVjIqnq0Le6IXp41XL3jfSenTPmF4G+BW3jWH1+31xqq1iKd0UiqeuXIiixQ2sRIqM8SEvSpRYGm9+rqzqODY3+OS5pCqWgt1G2b91GHoq0mMqeSNXTRkFtYybfRSONLCsKwL4ATcFVtE/YRauj9puw6woL16YcEiX9uv64/pRMjjhJ0lBrmPV8jFv8PEOdQXX/ntRX9Uqyf8Y6RAaBbWMEuOxDqF1RQA/4KYu4XBg/RBLSgsp/pw+a+ZN51kryXudy8iz9gkDWSauCeJzu254jps6efF5bADLWlC9Wrg7jw5gTa0I4J7u9uTn/JjJC6In7RslWSZ5fkBLCHAXj6oH4Iy3b83pDgC/isAC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM6Ynw/LnGQqsC83Xkyt760VWSp5QWBMQZPn3bfmuXz/ppLMImqdWXDsNS5lhfGInnZplkte2L6vyLrVyQrLWtY1J7cDYJH52RrezB+8cB3alqt+7rKx1Iui7qxZybGOjKgpRdu9dDLet91XU+VdXZJZRMt4g73GkqTif5IOvQlN9/XjK7x1PaNWuho8pfpkmWHVsubEdir5MUsVBmtjhp7imGZFZ1F+zLLC98PqIWsjnisnAAAgAElEQVRpL4TX/nCJdWOAg94k6TKtv856ZHloWRp9teV8hdZXYkm+8bZYim8rySzCVuGRGl8ul8vlIElRp5RPs3UUnMuFp85al0sonQafmHXN0e0Mar1rC6rCxjsM3uR92HZVJ8sS4FUsnCK5eWZqlkpHr5l7s3Nw+L2lWSoleTOBerYqJD8KpSJLcvMVKR951vv1JTWViawVHqmxdJSkpDAKylaFFIW+lKWpsveRmeAtptYcbqf2nkh+WGS5tsWuLcgLlOfFpnocx+YoeUGQpSreP5iMEH/SbKgZ39LnQNJXvdz+7vqfX7Ha9siX328oBO0/pc+L8VJ8W0lmEU0z6CuSdB7UredcDmjtjEWB5Ne1Onl1O21JC8u+5th22jqXjaZdW9+gaj7GkvdVbV3x16X8NXhfl8vlFBukwLYEeBVXB9blLOlQL7e/u/3hQ83BGUneZ/eVMpdiyTOPK1tgLSvJLKJNlS+vrvBEYO2k9a5zdDchcblcyqQ4V/+YC6yRNUe2Y9Ty1L6n3rOqrxxVuxg1u/rlD2Mv7nwu9iWAy64PrEtgDRTz3cZPseRfLpfyuO0c2U1DIpZi38gce2AtKcl8r5Eq66bw8X31pY+zWY4RIJfL5XIJq3yYD6yxNe3bqR2MkS2/asNGTdKeq51vWreXy6FXkcvlNIiw4RLAaTdch3XVKfnYU55I0lHqns6Lw2pAR5IO/efJ31zSbRXOcnmRHxhP5TkWCs2thMOLIkZMrTncTi03rsCIqtfT5rFBfqA8Kx9WVO9NKGWdEoqNwnhmCeC6n71w1IvK46pIeuPd7WEpSWGsYnOXkiyK+cxKpHW3nLT3jLH16bTw2J9ac7idWmacAgjKJ0mbl3g18dS8abBL+7z/ROvhEsB1VwdWNvks+r7qSEuloHc90FrKmzZC7M0+2m9hSQNFMl/h8i1rKavL6ceOF4aWy61sptYcbmdEJinvxlMuBUb2pb1H2Wb7/hVXwyWA864NrH2h4eXb4/yyQ5QNnrza7dR4B2k//UjohSX1patC8cxxm+Tyg7IRVzV9Usm/7XL0qTWH22n4xi5kzf96jS4vDJslx97nsJXfawIOlwDOu+pR9WmRJPLbfsbKfHFny7FqmW2AyjcXR1FSbD6mtr20pFJWVS3Pu8+Yt9Y4VXmZU5goad47GnKZWYYtKEfXtG6nFEhJFS+FvX/bjfN9Ks+8Xv6YqntJvWUJ4L5FgWUeotGhPQw649BTDaSi14GR+qMwu7RIkgV9zfmSyre1VQvNA9ta47rTGG2UZ4E00WDrFm0xteZwO41oW2T7MrG2M6cfJBXbo7Qzd3svv39f0WAJ4L5ru4TercMiM9/2fixtpzuFC0vqS//bTr/hWKjsanlRfb5xWUVsJta0bKfhraXtJlORrKbOeFYF/Xfs3ZB4zPtnIoZLgBewKLDW1YXT61DFftUek51LJGYGpeeuCohD5TPj7gtLkoxrlM6xp32bWLYat8PkYT24NDVK178Oq2tiTct2Wru1dPz39r/3VDMNo3S1KeSfOu+igYU/YlGXsJ0rIVsV2ciNf1ZZ2SAKLCGT9dpKu3/aT5yKu6Ikk78LV9pPnS4rEulY5kchFUkkybu5kTW+pm07hoNfnnXwD5NXlRX7/XAOiGPeT7nhEuAVXDXoLgW7zeQwTV9Wtjl8y+BO1muOBPFem/M9SuoKw7QZ0LZJ1CkyjSQFUta9Q3mTK15yYcP4mrbtmOI4yaQgUmodty/LzN5zad0/7XnUILAGS4BXcGVgKdosveRbUpMloZTm3aMsLeR1E2CXZvl2tPV2TUldQTrZXDoaM+oVmZKDJM/Pe4lyHFyvaje+pm07XVG5XlqmU7hvz33WGZatCgW7/s5mWTufxtgS4CVcG1jXHQb1VZt+kOnYzSLL9Zy7lfZjJwqvK+kKeSZ91AlY/E/FcS0p2qvTZ0tkuf7LamxN+3asNSpXMC/WqM6NFqtC693gV5AM6jZcAryEn701Z1/IDyRp3b9bMLV0WsJYGjujd11JHdOjUYl56bwXVWP6kZSYLcn+9evjxta0b6eWb7dHY41Qku8rK9pFgaRtofVh+JVxHFRuuAR4FbM3SHdmH2hWsK/ZWXqQVM6MeQmkwJga9NOrpyeIjZkavnzJt87WsKSkRne2hrNXT7dlrXF3npaDqgkRws5WPlXNnLBgepmRNUe2U/mSvPalcnqZdTNbw2c5I009aUPP5+ADGC4BXsFtgXWu/2F/d/3Pz0jt7HWfnhQ0kzOdvGbSKDOwLuW17oPAWlZSoxNYp6CZf8pW489ucnzV+XL2jNmNP5sZuxYEln3Nse0YBZV51k5P82nOh3W4XC6Hwcxf9e7u5pYAr+D6MSz5ubK6a9O50aW508W4K0ZhPdwU7DbK/q3D0FORHlPJs805HEWd65NuL6m5fybPJY3cTKRdoESKjNW9KFGyluSXW4kCKUv25d2Oy9jXHNtOLU61VSylm6I+HRlESf7+4UmbpLyoKpP2xqVq9dMw0sGA1XAJ8DJmQ63TiIjsj5uo39VdZDYIurHSTCLcaWFdvjzJ+hCKBSU1eqfzquc12Gvs91o6H6pbkJ3BIq/6CBY9hMK25vh2KuVdhp6MDuWXL3lh6NVTrPZCqKrI1+BXOFyCZzX4m3wCj/5MJtww6B5odiaYkhfuzubpvPDcXu3oxWf7lVOe7dqBm0pq6hufJ8afk7w3PB159VXoa+P5XeHnNS0Wy5oT26kcYklpIcWf9c55n6GKNC3kn6YvoKeBhb9i/rmE95RkmeT5wfdPYd2vpAl5kueS70dX30B5y5r5MZMXdNdIskx+wDWgL6v/rMxn8JTNvtLbLwcWABOBdZW36wfdAdzVMwXEMwZox89eOAoAd0RgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGcyHBTy1PM2LXIFC5r3Wb0+RDMD0ppkD8HjM6n9667j7fKjimGV54Ie9KbSzJCsyhYOptdM0y4rADyPL86oW1+exmCIZeKSZgMg2mfmjdzCfYbDfV08G9w9G4yvfNM8U93fG27NtvbxbylX1eTQCC3ik6YDIVoUk+b6UleF0aFtNm2P7xnZxtUolbp42ddway3e2h1MtqM/DEVjAI00GRLYqJG+99iUpPx4LSZ/1E9+2e0lR6GdpKql+slz+r5C0DvwiOxZqkyxdSfKjUOXbD2MPYnr6wNJTPzcReG1TB+CXLyloH7f7FUgKqh/Onupn88aS/GrxWlJQPlr4ay3J+2qLWpdvObSLr6vPE+CyBuBZ7XMpOLXPqfROvpRVj9/dF9KubCftIikv+4f5UfI+ykaYd4ikYt8UtT6Ua64PzWIH0SUEHmeiC5b/J3mfnefqHjdS9CFJ+l8h/2y8s1y835oDVPl/qt70Xy7v3JwcXKXyvq6uzzN4o4UFPKejpHX3yeFrTypbWGkhNef6/EhKCknKZCyWH0q5JOW5ZFzMsJaK5lSiYwgs4CkdJa9/Ni+UlKr6T5tMQb24kDwj4+rluSRjcVS/3UFc6Q48o6zotIpKu3WVPJnKOCoFkrKoXBwYby9Uvj1Vd7mqlpeDCCzgGSUahEx5RZYkKS9bW5VQVQKtOy0pZer+bCCwANxPLktgdV7tKiRp11mUZVW/MdxLadh5a+cKeocwhgU8o8nAKnovhlVgdW1UtcN8dSIuuUsFH4PAAp7RZBPI8uJgUbHJpPLGaN+XkvYNzl6EJQILeFrfmk8mWx0lr7pYNJK0qdtgG1fHryQCC3hFxeZfVl0bL0mxL2X/EklKV8epFZ8dg+7Ak7p9YLyceSb4qE8Reh+rQvm7QmWF5HnutrFoYQHPyLOOoy+S/tsWkhcb9/UEJ0+S0rSQ/NPIpQ4uILCAZxRo4mIpy+nDJoSK7SqTtP7sXOMQnKvpSr34M5A0MevoU6NLCDyjIJWyQVOoujnZU7fDmLaBVU5SGsb9EXtvt8uy3AtCDS6IdwmBBTwjX1Lan8s4VXXu0Bt0F6smUznpn30S5KBOqWL0AvinR5cQeEaRLFd4NjcFBp3bl9tbcIpVIUXn8Unb61IILAD344VS0b8CwQwso0/Y3gr9Xkjrj5kBqqad5iACC3hKkaRtt+eXZmWQGfPMlMurJUpTKToMy9quVqv2p0TyXR3DIrCAp7QOpeK9s2iresqZ0DM6jEVSL07UvwG6kqZpk29pbs6l5RgCC3hOO0npu9HG2mSSqjn91u307tqrTqBEimyjU5HaOwiLTbm6m5jTHXicyTnUt3tJflw/qWubqX3SYP6vkHcKpHKm9+BTKh/mFfY6e+X7V2n9FIpilZnPK7ymPo/HcwmBR5oOiPJZqV7oS0VaztDXDFDtt+UzC9PkqPpxhcfNsIyy9PK5hOugfFxhGW/X1+fhCCzgkWYCYr/t/my2jCxPft5aJo6pSjezrLpP54b6PBpPzQGeWNy5oio8mT25Q/OECu9jfkjKuNYhHs+r50cLC3ic+RZNnmRFKgVeEPUvRciTNCv8IBw8q8KqOKZZ4QWhdVR+eX0eii4h8EjPFhDPVp8euoQAHEJgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZ//foCgB/3NujK+ASWlgAnEFgAXAGgQXAGYxhAY/zxM8AfE60sAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgjP9b9K4izSSFgdcsyOQFxhuyQuWLWSHfl6S0ea38uVteNljUFldkqeQF7cYAQJL0Jl3m3pPu6/SJ4ipW0pXCk/GWVapTWP0j3lUFN/xo3Q2tdDXYSF1ccmw2tg7n6w/gz3hb0iXcrprWUvLveMtm8v2/ZNk7i9V7u7HVe3HL1gC8qvku4X4vhVHoK8v2uTZaLy47Lv+XZ7mK90+zB+lXLxVH+VG1SJKyVSH5USgVWZIryU+39AuLTN0Oq5TnsvZNJeVpXuQKFHbbc1kh9XqlqSRZW315mueF53tB59Vux9e6dVu9+v3l8IpX27qmyhQoCDu7kKq7U3muQdd+5GMCnsRl0pcnresf1pL3dblcLicpNN8VSqf6H/HlcrlczIJ36r291ivmy5e8Q/1TLCmYrpzdabi5QJIiy3sP7eHqxV/GC+Hgk1lL0uEyNFaG2WeWpHD31V/VVq/+avKiw9JXq/es21AKzVe93h7EkjxzTUn6sOwi8AwWBNauc/CH0u5yuTawLjtJZ0vhvWIiyftsf/xQXdh1hoF1Lg/eQV58dtthnnGsDgIrHsmrc6+M9i2DbDFfHK/XcDXJ/1z26uVyuXxF3VeDU/NSJOPb53K5+JJkrHya/3sAHmfBZQ25ZByRkTQ8wTcv9paslybSh7mxnbTPb9jcQNL5XyNbZZLkh2HZcyrex4fojntJh2F/OP+XSVIYx3HoSSo2E8N8/RdH6jWUr6Y+vs6r2X9lcUFYdXKz1b5+LVDn95Dnva1nGu1jAs9gdgyrGxi+dNNAeJAqi+bedJS6JwbjNNVxJ5UjN984kqqYSLt5k60KyVuXZzDz47GQNkEwWLksYSNrXum9kLxdVPbB0n0qbXyjputmr7M0Ve/FkXpJCnZGNZNMKt7Py17NVoWksNpudjxK2hbVCtFWyoqmv1hGlRl26nw9AU9ouhG2to79XNklvAT2zl2nmC8N+o0Hya/fuLyrMugSfkqKfPX6Xl++pKDd4lcgY9Cs2yU8SCPjV5J8o9Zr1VUu62Hu9YfXq5i9XsMerTl6Nv3q5exJ8tpOYNVjrV/2ZY5RVWHabt1X/XsEntCCLmEgJdvvXl6wqIGUSkHvBNVaym/pgvYkksJITYumtM+l4NRu0Tv5Umbtno22r5RKOhi1PoRSnlreKCn6kJQaTVZ7vYYOocwrcade3RRS8Gl81v7nWtK22moos0WVlu2ppuQ8F11CPLXZwIp8af/fduF1VCM2WtDVsIVaeNuYWU8ieVGk7mBRvpe8D/OsvxfLPp40nldKpE4nT2uNZ0sYdF+01stmranPwXj1mEreRzf2D4FUVMNYnUGstJB2Zo1SkVd4brNjWN7HqlCxl8Iw7GROZl6tPpkqyTEtx92n2YbX/WpxOHs5/tT2cynyAj9XlrfH8lFS7wL89bawZcdEXlV1NISy70n5Yma+aK+XTTBVqPnqXtKuX9bHv0LH2K9r182nMDVaWGIIC89t/kr34LM8VNPtv/+9G4dzkRqsfca3ynsqBfHshgrL0XKX+wmrhkOvKXOsmlQma9drJq96ZyG8MAwXXnlpr5fNdIHtq0ku+YOa+mvVvU7fV7uHqRQqNHrdtLDw7BbcmuMfvj7KewiL5P3fbT20aNkl6z9zv3Mi+VEZDO1gUVZIUX97u9Pp1A+HubxS1v1ITqfTbuSdS+plNd30aV9N1dxfYFqriURjEKscWDQzmqsa8OwWzdbgRZGKJEtzKVudqiOnf/PzUPO3H0QLOxrpTxwux6IMhcDPlWd1TRJZMsByV8pMXoWp9P6xtB+Vyghle71G1xt/Q/tqqrLIHj/I6i0Yg1hleyrw8+4C4Iktng/LWx/Op1AqNovLPtV2iw5o25uyO7S6mqO40/daOF4z176KJOX/NsvOSaSdJoy9XlaJrEHUfzXPB/c/ltp2ldGgSsv7CMNm49OxCDyBqybwC08HKRs9v/5NvmXsPvv+IVQkUnk56A2BddxI8iaaHeWVrsf3/70fZ6/JT98l+fVGR+plUWxSKR6rhPHq6D61w/J+IBXlP9Nyy6HMK0hpYeGpzXUJj4kio32xTtKf6bdJCqW0d7YsLSbTYpG2ddLpey0aiztuJKnY2G7gq3yU8+EUSdLe4mMomngvr3TXYaZepXxr/DstpPVuwauFRhqknppzA2FWXVmfVzddhVJ1FwKBBRdMXlp66l2iHpc/X3ul+3jpRjHDy+HX3Xt1F+peDB6ouYA+VlueZJ9AohaqDBfP08wt2AczagJjRgZbzLUljdTLupr/sejVeKyqxifyUW+ruSE9rK7N/5z7SIAHm+8Ser3eyk9OqbeWuv2q9Kgrpt+yy7Pq9hctuoCgYyN5pw9J+6n22PrzfGjON2bb/ybO+HmHpqF0Vb38yYG86Vd7mkGsrL6xIKgucedGQjy/ucAKPOX79scimRr9/aZ1oMKcZDR7l5aeXxyVqO3nBH65B3X582t7pyCMVV6qP85ff3x97qrPpdiMvdlbf7bxO1GvoXS1XfLqkuu/vEDKC1VXYUltXNIjxPObvaxhvde+nUhzWyj8uW/hw6rIVk0PK30v5FVDPvmxvIvkekdJXj2QFORSWgaLVyxoLXqnQIqTXNl2butBIKXpsZB09NtrodrZGnrn78bqVTKvGUmTo7QPovlXJwOr/ljDTEojpc11uoFXKFN5RpbAwtOb6TYGktYfX5fL5XwIVI1V/cgYVjUpwvrj63L5+ghlTOd382wNn4Pd9ZoaW+cUNPao3vxJWjyJwc5TPSvrYLYG02i9bPMx7NROIzH16ugolDm4VU2LGLef6FryyskybHOyAk9jyWUNp0A6vv/v7e3tv01WzQ3wU9Ynr9rY/95TyT99uzU37GgV5RhTby67ytvbm/G4n2rzZadw2ehdfPJmuncz9bIWarviw/Jq797qljkLQ3VNVmr0SKUi5SosuGA+sLxP477l8PO7g+DTwnO7MS8+Lz6AstXKPsxjiY7ykDZvquu8ZARyvfld0L2UoLXd9uexCNaaulF5tl5WkaYSq311ZPS+MPfLC6S0M+FPJCllCAsuWHJrzm6XZHkhBX5zW29/9oTT4B+LplcYTsLg7XZJlkmeH0STb+wqRo72JJcCo/uV/ZOSwpMUbaTk0Hv7WCvj8E86hpazDftqQiuzqvsFw/nj9Ro13cIrXw0T6TisZlKYZ1vDrJxZxoiwrAwsjxYWntyyJz9HP3Zm8Ic31r+5LvBzKVlL8sJUxXE9fLvtoA3ivbQZXBUq+bm1NTV7ncF4vb4l2hZKBxf2FvvO1sJ9GVhtPIWZsjylgYXnd9WtOY4w7lAZ3ITXdpoiSb2pVNPRE2W7UCreh8uD4fyiuRZcXzBRr+/w1hrsVDndqPHUxVBlpaPOkqMYwsLze5HA8mT0w3LVbZxj0V6dWVqrnqV4PcygrSxTzpQOnpTuB4vDai3D9I3Kmq3Xt8SelPUqdDyqO+lMWG6qjafQKwOLFhae3YsEVmCcmyvaY284YYofqG7K7FRe69XYZLJOJyVVz6oePnNs7UtZ50LRfWrc4Dxmsl4T68y+6h0kHVdmG2u7Ue/W6aAc8jIWhVLBEBYc8CKBVXbwMkkqtkUdGYWltdP2vYJYUvKvvpog/XdUeY2AVWzvFO4kHf+1kwxvtzJucB4xXS+LpTOOSlEsKf2v6RYe/9tLCjuXvZZJZT7wIzT+CzyxZYPuzy9OCuWrdag0yVVHRqJhFy/aqp5CfVccpXyzDX2pqPqJ4xe0f/xXWC54j+K9lK388vBPM2liJpjaTL2GrNdg2F/deVup2O/DQNVUDlL40Xn/MJ6qCJupNvAMHn316n10WjW7clkg8yl8l3ZhfdV3P36M69IHj6q/fEid57rbNtwpZPRK9+l6Da9lv3y15U6/erlcLh/91BvUIVS/Av1n1gPP6IUC69JOxu5Vjw09y7jhpbFT+6jTy7l7A5/xtmFgXSJJ/tel79y5GsEoZCywZupliaRL0Pyipl+9XC6Xy1fnCUXr4Q1I8eDXHlurBDwX6W3hJZ4uOGZZJj8IR0702eVJVqRS4C2eeN5WRp5nhbzA96MlMyb8vCTL8lxe4AdXfRjAU3t7qcAC8NLeXuYsIYA/gMAC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzXmVO97sbmULdNyfoS1NlChR0n7CaqnyKTy3Pew+kyYqynKzovrFaufPePM3zwvO9oDNPfGF7tHS13nSpnTX9+dkGLdtf8smYJeTDF7v1N1+8snD8QY+e9vR+vg5RKAXhrjcr8GccevKXLr5cLuVMxDbtlMendZsK4cFY1ZNk/jyYflgqZ1QPNZztuLvo0GaXFxuTM1trV1VtutTemkFs2/nJ7c9/Ml2BJEXdZf0ywt0NhX/GYSCF60N38dcu8hVEB8sacJ2kFwqsXZsga+PoPreNg3h+cWXuyPnqPaUraKdyjyStjaL6D3g41R96KDXPy6jJSJtzd85m79AtYqRq06UO17Ts/OT2rwysc/lqdyPDMq4u3Pj1+ebzNJo/Av80WAeuk/Q6gdV5FkTQHCGf3jWLazNHTr12EDbPgG8yYicpaEs694+4nar4CCXJ625abWCdy22EcRxXfc4msWYDa7RUy5rByNNyRrZ/ZWBVDybqNnhsZVxXeOfXZ7xs/hHQyHo5rzSGtT9K8qNQeZJK2Xv1t1+sCslbB16eHaVs9Tm5uBE2h062lYLmeWDlWEq2KiSF67KZlR2PkrZF9aZoK2VFc0CVT0c1Bm0ymY8ALDbdhwa23gvJ21UPkUj3qbTxjZGsda+NJ/MQHi/VXDPPj4WUrT6tI0Qj25/+ZAaq59Sm6/4Lbf2zNNWVheerQtI68IvsWEh7vyp+e5QUhX6W9j8uvIxHp+Z9fHlqWjknT81z99ZqGlCfxujSyGILy3O1zp4kz+hylJ2nugxf5lP/quOybfL4kk6XS9UW6j0gsN3YQZJvjDCt1T6ebPSJh7Ol9tfcSZ32YGtq+21Z/dGyvk9Jka9en7Bfiw9vUNR04Ws1LcOvtZoW5bn9VcaD6sJ9LxRYB/MY2Kke5/2S0T86NQfnyGIby5ETSgq6o9VrSd65/Xd7OHple6oJkHPzmYdlq6jzqMN2Y1Gda+ZWT22dJgJrotTBmp9G0HdMbb8tay6wYkmHuL+JQS1OknTuLxkt/Gx82mVNy9LWxoaiya8hOOmFrsNKJcX1D7FXnyDPJDWn88Kg7puNLF7mmEpe7/nKh0Aq9uW/AxnlpYW0k3G+PpXxmPgglvK9dSuJ1O3SrDX1vHrTRKnD9x4k7Yu7br9bihdFqnvGY8LgqsITSXHzC9g1xSeSHxtLr64unt3LBFYmGZdDBVJ5DKYyB4zCasnY4mX2ksWlIlAAACAASURBVHb9UZUPTzrmw+JSSWFoLMg7m449aT+27e42wmrlBSZL7YlCqbDHyc3bbyS5FHmBL2XTq15XeCapHcLzw2rdtDAW+5GUWIIYTrsusN7e3t7e3pp/TOi9f/bf0+UskHdHnU0jy299JHKSS/5gDNlfqx5h9n21AZVKoUIpz9oFbQtL3kHSZmRL3cPNC8Nw4fWTk6X2jbecbt5+o9rZ+SbWdQrJM6pSN89SmTl2XaMNbrixhfV8T4sO2wsMOotl/tU2rZuRxYt0Op+ttZqDMlTTJyyyKrCazWUyA0tRJOVb+5aybkf1dDrt7G8cmCp18F5vLE1u334tKVs6kZrThXeRdX9fhcrWYPf8a6dnjhfxMl3C0+nUtnrKmJDKv9rmaMyT+q6VkcWLdL/HG37QNKOMQ6VsYgR+b4Fh50l7y4EVSnq/+YAbK9XG3iP+3vZLx6qPFvhGE9Mq1TVN3nUcm7+BTGVg5Z2P9pYuLJ7drYH1fE0s07YZzPBiKd+UfZviXXXbaGTxEnk+Em9tu8pIgOouvrDJx+7omapRYktjKJKU/9vc2JMaK9X6XtmO7O9tv9Rk+1yfMO21O2fsdjujT55l1VaGO8EY1qu5+cLRy/LhpUl3KsZQpMdUCqu/6F1x1DFdB1J6LKRDNLl4gdH+Y6D6kPGDTEXuS1JaHkvhUUoiadAjlBSnqdL9IDHXSSrpeBwbOir6jaJFpU5X/JrtL1AkUlDeS7iXkvH+ZPqusol6k43KnS/U/c2EKYH1ch59pfu982p7LP9Go0O95ODtm+Ecrw2mkcXzCo10Xjw13+hhVl3bneflMRRKykYCS7t/0j4ahMLHeypJRZLID8Owv81jf1Co1+gdKXWk4hYz218gUd3QDfxcedZJpDZwyyvdddBNim1WfT1Z+pyMYb2aW7qE5fm75Z3C6v3VlV/d5cvWXV63rIyM+KM9voyD1hyXH1k8v4WpF6uGSjOIlaiMJ6/uE2bFsOsTxFIx7L55p2ayhPz4/r9/toulJoyUutw3t69ynL36KhgOux9XtW0qSfFt99Fkq2N1VhR/wTcG3Z95GGv/r8mV7b+2u5P8l8wsvo9mECsrB5yloJoYqnsiq7ILpMRShfXn+RDVyZtt/7vuRNtYqct9b/vKs/ZrYW4QyztcewJSklRs/mWSd2K6rL/iZc4SVnan00fsS9mq6nFs95IXny+Xy+daKt6TycULLOpkBVJeqLoKS2oPWPvg8k7SxtaA8dcfX5+7qpVSbMxLq9annuWlLjex/Xl181IqY3vk8lRJ3vpzcGHbEvv/jpKCz1tHv+Cc74xh3Wvc/Z4CSdFuu1fxfvYkpXspKG+jCQ7Re6FN4I8vXmLyffWRE2ZSGikt6kWBVyiTlJXdw54w3qvYjvRrgkBK02Mh6ei3o+iWYq4p1TBz7n9k+/OOkrx6pCrIpdQcKjRmm7jimhJTus0keeub2mZw1lX3HnZXmyt1bDM/WMVScxesL3PyvJ2qufVGFtv078L97P3ciNXe0ftR/jtu676WvPKm62b2zbAt6KuewmGs8GpmuuqG7ZmbnydKta0Zqze5w+z227Imbn7uz9hjzLs6Vf9lhV8uX2V2rttbpr96pYbM1/BqfrBL+NjWV6xyECnLpbVx555fdczsixcZveMjV9sDqq7JSo0+kVSkw6uwKt589y0+eVO9KpsFpUplxefbl1dvf/jW4o5Xu2ervaTwdGhr7ql7SiRd1n+HS74XWFNNpevO7lnK7gTrlXy/PA77Y9xheRX8yOJlRsaPC/Madi+QUuOC+3KtdGQIS9W9NOYEC9vttreRYK1rL90elGrVf/DFnbZv+Yzud2tftsok7+PU+TCHPctb7xfFs/pmC+tpzhRuV6uV+XMVWP3GQ3Wt1MjiZUJZb4xLivJ+wvZN6TDCMls2SJIOvXtp9vt9fyPGLYpL9Uu1ORa2W42+vf0k784y9qk7zp5QrAopOvcn1u9EYn3DDl7Jy5wlTNO0dzT81Ldr5FVZ1FHsZR73dWC18RRKWZ6ONLDKm4XMCRZ8e2vmyp3ql2pzlK1S395+/5bLwNf9pmx4L6T1R78y3dudrVeQwHGvElieuh2OtL3C3FxcjTONLF64qbXKuxU7tnnnAtRQUp72I+yo8WMoDqWs7b4F5fqmZWNNk6Va7LNyRoWeb2+/vcy9csc5ZtLUvJeh0f21Dm4zxwt4lcDqRVCiMhk6szJUN7eNL14o9spnJJiOR3XvoA6lNO/MEuiNNWYqB5VzAzbr929eHkTAEt1Sh45blVds9Xx3+8eiczOBqnm37jN9QiJ7nc2JcoqkbAzjpbxKYAW+dGy6A8VW5bHldUedN9OLF/IOko4rs4213ah3c0k152l3upNidAhL5QQLbZlrX8o6nbl9essNwt1S+/LNRuXYfN93tz9s3/i9r4lvSPphWFlLWb2FbhcdL+K7Nz9fJi9gGI7JLzlxaK71NlLOQLSXVqfyeMrf82qacK0TaVs1fYptUnXoxhYvFMV7Kf1vHVdf4Md9LinsfOeHe6m+L6dakkiTnZRdag5p796lY7ar358f9+rcINxv45UZM1dqd80slapp3YfrzWx/WmFpjkWZlFxz5emYtBjeJrmTpPWx0KYM1eNeCgisl3OH2RomLni/4g5po7ybarFLMxX/oiBQniVFcz9sGO+l7TEKvHKxypHakcWLN+ZtpWK/DwNJeTnaH3afBBga/zWXTDVRDv+MH6J4L2Urv8y8MnXMNtxw3H9kFphOqZY1Q/u+z21/WqJhhyzaSll+hxN3uYa7v5MkP96qWK3XfpocdfP8D3huV11oalvtmrKvrc7yKn51osBrrmPvNp0OM4uH7Jdcf/SPu8GF26HUu4C8/8z6cFBwLHNjg+Ot2Yb9AcmnBaUO1vTHd318+1OfTKnzZDNzYVyv+Y0r3W2ttOolnvz80u4zhjWRQr94vbtnTJGs9bmJr4ORLWF7j+3I4qWiz9hsP6zPgzHgcuK6zjqaGsKSzEdXlYV2qhVePaO6tdROkeuP8/iuf2P7eVYOFHbd+1kUFocmzLyPm+6nxnN7u6oLZubPcKTJpl/4bIL1Vlg8hiVJ+THLc/l+2BuRTdI8lRcEUbBk8WJJluW5vMAPfuxsVJ7keVbIC3x/0Vx8r7b9G+RJmhV+EHKG8AW9/Xhg2QNo8duvCywAr+w7gWWammimLr6Nnmv6iUQVgMrbva7DIlcA/Lyfv3B00J56wmn/ADjhXoH1HGcKAby0u7WwFncKr7owHgBav3Ev4dvoDwBwhVtuzSkbQm+Dfy8x9c6L5VIJLmsA0PiV2RqW5RmpBGDa70wvQz8QwB08z3xYNLAAzPilwJpvYpFXAOb8VguLTiGAb7vPzc/WN3QtuolweP4RACp3u5ewNp4yb7SyAHzT8wy6A8CMO8zp3jE+0czvtK/yNM8Lz/cC6+zjea7yMfatrJCC3lxv1me32x9mH9pesc98fvPG8zQvcgXmYw+btcPu+6b2faSUerOpMgUKwvl576ZLsuwmcC93HsPS94Lpu2NYx/ZJX946Hh56/zJJUedpEatUCnsznb8NF0lKV5YtXqyveGE4nJ/3xo2P79MqNT+l6X2ffjVN2ofIh9H01MI3fMZ9aZplReCPTQr6L9Opn4X5f4NlxTHL8sA3PunBYzkmk9NSpPIkzTtlThY5rAF+1pt0h4dQjL/nWmYJ189Qf+42TLzBQwjO5Qtf5rJQknaDXbA8/8D65IfRV/zP3uq3bfyzt08fvbWX7ftUKZfLV2/y9eA03PllJY3sZq+IcHzty6V8xMSgBrvBsl2ddn7zguXXMPGoi2GRX03yNL+9qSItNcDPknRDYC1ZcpuxEhZV7lz+/YRxHFf9mn5iVQ9R6CwOJcnrHl+6Q2AZz+35xsY/yx3xw7Duqh26ay/a98lS6lcVhE0fr5ehS0sa282Og9mssmzoJFkCy+8vsz0ex/JbmAisQZFmGNe/vYkieUDP75P0OoEVSPIO1dFfNvZ7f/dVWz4yl4XDRROBtT71NK8ExsJdIEn+9zf+6Uny4vPlcrlczmX/67Oz9pJ9ny6lzKCwauxUzw8aOc6nSxrdTdNJkvz4dCof0To40r98yy/ususviyUpOlSlVC9Z/qLGA2tQ5FcgyY8/TrGv5mtkvEhrDfCzlqeB8f4nDayDJP/c/rxWPzM+VT3h3GzSVI2KTudEo4Fl//sfPkNvLfUOxls2/uVLCtp9+gokBZ21y39N7vt0KWdPkmccb2Xn0tpkmKnP6G72i1i3tfb67yu7p7bun7ns7DV1jNt97X2ZrCV/tGs6KPISSVp/Nfu1ni7SXgP8rMVpYL7/SQMr6v8Bhv0Fsarn1u267/LU+8se5M/lcrkusC6heq2MWzYeSwrM1758M97awJrc9+lSwm4GXS5l3HndRYvqM7qbvdfX9Q+H4SdaDdYbO/P5UT1X0dzBtbGFSPZ8PXtjDR9rkeYv8Wskco0il9QA97Y4Dcz3P2lgqf8199E/HHzJ+/pUt1EQSmHce+cdAuujX50bNn4eBsdBRg6G5ic2uu/TpRxs4dQ2MDrm6jO6m/3Xm59CyetuwiufQHsy36JBiF08Y4fP/Tq0e2H/ddmLjCQ1O7eT5cHVnSKX1AD39gSBZTnzeHNgdUPjq/dn9FEehr75h1lmxleve3CHwDr3qn3LxvtRdrlcLp5RbCewRvd9uhRflsbB2etW87KsPqO7aZSsThR+aNgyjLpnCa3p0v1VRLI1h+LR0LQW+dWp2TkMw2GbyShySQ1wd9+/0r0u52ZvZjlvb29vb29mmVeVX3R+8sIwNK/CSSWF1uelewdJm+vrPqF/+c8tGz9KXtxbFsp6bdDEvk+WkuSSP7iMyF+X611fn/HdLOXqfDRRd21t0/LjMARhGIZh7zLetFq3eossn0l+lHa2KowUmci8Ctcvx6vGi1xQA/yQqwJufoXvVGLs30vr1r/2qaNqxH+q038KpbD8imy/MHWfFpb5BX/Dxj9l6ZidT6fTuV3b+KxG9n26lLWsoy9nWYaRZ+tzGdvNVv8aK3UawZ+SPqzXYZ26y8LOX4b1FxNOXtIwLHKt2UaSWeSCGuD+XulewlDSu+3umcqxKL8TA1/K++/bedJ+YuWrpSq/d7+x8aRbRMnvNRtLE/s+XUq3odC+HliquaA+k7s5Im/+VbxLsaU21nWMa9TDTilVTVL5/dbgXJH9m6SmipyvAX7ETwXW708OE0nK/22sPRHJODZt/RU/lrS9Y20SdZLglo3nsgSE3cS+T5aSjx2moaR+4Cyoz+Ru1uUafaeis5l9vjRkhuFQ9H7cSpbbhiak5QnbIt1uj9ao7RY5WwP8mKtaZPMr1O+5pRJj/16k+sbzooNtvPdLdR+t218Jqx5YqPY0tZZeOGq80lnha61OH+GmjQdzu290S8b3fbKUk6ynAy1nWJfUZ3Q3W73zaQfzV/yhsl873yX86tUuHIyvx9bf4ESRF0nx5Vx9x/iW/l2nyPka4Cfcf7aGB/p4TyWpSBLz1pFa2+QJ/Fx51m8r7P5J+2hukoFjdyjaSOXcaCLlaSGtjSHfmzZ+TQ91fN8nSylUtisGPA2bDPP1mdtNyfdzJe3yvVmXjRQva1FaatJdlO+lqzqEZYvpuC3q9dNDryrdImdrgJ9zVcD1VxsW8f2qTJc/ofNHFuw6Y6iBmjPtnYsX60bOJVbz5a+l9xKOv+J3ruK5aeP2Whg6A79j+z5Ziu1ChWaP+qvN1md0N3tbbK49XZsfYtNImW9h9ce4uyPgl8slmm9gWYoMJcmvbqjsX4LfLXK2BvgRrzToLmn9eT40U5Zk2/+M5lCeVbeMaGyAZRdIyegI2LV8s+HyGxuf2PffMr+bUuxL2b9EktKVWcf98IqGm6XJtQ2scjUpOp9Pp8vBK88AfL9I3NsLdQklyV+vlaVZeagUm6w5BMzLbAI/V5EMTkftVtJmZv669aKTWJLSNG67hDdv/Kpuxui+j5dy7TR70/VZsJvyPlaF8neFygrJ8+rB62y7uEM4b6+xaQpnHMo23zpYFUpTs4ibi8R9vVhgSVIQSGl6LCQdm7NOR0lefX4qyKV0cDCF8V7Fdvpb3hv9ozUn3UuTo7QPmi3ctnGvuP7M03DfJ0uZDKx+fMzWZ8FuSsFpVag6Veh/bOvA2lQ3Kd1Dnnav1WimlLTMytjRTF0Y7DbS0fhd94vEA13VheyvNizi+1WZLn+pnad2JOJzsKn6HrZQ3VteT5d7XDi6k3Ha6MaNhxq5v6U2PnBi7PtkKZ/2PbUPbs3VZ3w3u76qiwO8+Ku5mTA2Bo1uOktonpJc985QNvXp7OpwDMu89tbvfrb9ImdqgB/yYmNYHfHJk4pqHGU4nFIMB3m8naTNXa6niX2j/3TjxgPZ+mBvb2/zk1Ab+z5ZyugtJbmGM9PP1WfRbkrydl+fh3h3+tp5yqqGXCYF+20pk5Rst9vxe128Xk3STluxON7QGgpVXi5r/mxc0tovcroG+Dm3dAmnZ3O/tP+8sazLzOtWWyno/pkG633zR2cZ/02HM3FHUaJ8P3IH2nWivVSfvr9x474snarqZr2uqX2fLiVKJMtIU2HbzFx9lu1mWb06Gor2QE/NgDrKUoGWN/hWMUb/jpI62136N2RGjicpbxYMipyuAX7Oo1tYd3uWzn6/73+ft5drJ3n3wr5PSYmlKXW46x061QZu3bj1RFvvlp/S1L5PlxLKdpezkqJ/gM7XZ+lu9te+pWUSdBqGWbeUY3lr0JUm1xgWOVkD/JyfCawHPDLVt9/NVX7v9W+ZC3xZWwRerHtP23D7xr3Q0qmyBtbUvk+XEnm9po0kqdjL0quaqc/S3eyvHUr1BAolv/p5IgG6vdNM5meS5TeNjwfDz7CpgKXIqRrgZ1015tVfwVzS/PunNj9lMOmmOaHlYH6nWMbQtjkWG6qcQuS7szUYI8c3b9wyhfDJXNQMuk/u+3Qpg0lEL5fygk7LBzBd0sRumgvD0Fjm28aqF8zWcJI5pWl3Nqq4X48RvSJ33dUC85SBpcipGuDHPENg3SmxDhrczhWqOvEzmBeznF/vXL0p7L3g3TWwvrHxcFBuZy7QJrCm9n2mlC9Pg0vSD7JExlxJU7tp6KSR/RNdEFgXz9jh3kSNwcITdr0iz526nDpl2oqcqAF+zM90CR/QIZTWvpR1enP7tD7xMxxC9gPZ+yt+fL/77tPmvzdufCcpfTeWbDLZLrie2veZUryDpOPK3Op2Iym2jXhPlbRwNyO1dxAWG1mGyhZZS1lddLf/mme3XTHlR8YIYrE1a2YtcrwG+GFXBdz8aveqwLVV/JDMZ4CeY6n6Cv2SBi325kKp0NZo+H4Lq+mSfWvjsST59Qx7p0CdKrTXYY3v+3wp5eWlcV3Fgz+y+9MlTe6mKVTdJvsK7B/okhbW2WseHdhrXo7Mxj7UL/JTzdODvoLOR2AtcrwG+DnPEVj2oq4NrPJokh/FcRxXd3m0ozj9FnvTXxlkxuddAutU/xF/b+Plt7wXxXG8LseAje6bceHo6L7Pl1I/+jSM4ziu7kYMxwZkRkua3M3+ByN/d/qIPdmP8yWBddmpfEBiOZGxccVnZNmm1aDIWJLCumbG0zbsRY7WAD9neRoY758Jkfl8Grh5W12Du2qqYzaQ5Ruy/nofZEb1hzss/qrA+qq3/82N9y8KG5siYGzf50u5XD765+Omn+9ufevkbnaYNR0M99cfwWxgjT532Vs4hDVTpPnc7pEiefLz75N078DqHziL3LitvnNnQCSs/hzPst0kslP5ZzjMjC9f3w+ssnN3h42fI8sulTq35tj3fUEpl/ZmmdJ6soFiL2l6N7s+mo3F1obcssC6NEN5nhmUozcbDUwVqcj4DCbvXxrWAD9IertqNmNzOH1ktZtG3G1lLdjWUJ7keVbIC3x/djI+V+RJVqRS4AXR5LU+0/s+U0qSZXkuL/CDaO6S7aX1GVUc06zwgvCbv6E8SbPCD8LZCl9ZpBcs3bEfqAEmvd09sCby6jL12i3bAvCn3BZYF+PfMpboG1c0mGUSTwAs3n7vXkJSCMB33Tewbr9k9CEXmwJwy2+1sGYbWCQWgDl3DSxCB8BPumdgXXcW8Iq1AUC67Tqsy2DJEsNzi/Z32EpmxB7Ab54lBIDveqbAolMIYNIzBRYATHqqwKKJBWDKUwUWiQVgyu03P/8Ozg8CqHCWEIBDCCwAziCwADiDwALgDAILgDP+7+Y15+8NrN907R2IZsnMQQqg8bMtLIIGwB3RJQTgjGcMLK53B2D1jIFFYgGwesrAAgCb288SzuqNuF/TbGrfy7A9gMY3W1jfm8YdAK7xvcBisAnAL/qxMSwaWADu7VuBRYcQwG/6TmDRIQTwq37oLGHVwJp+tuBt9yEC+LO+0cKigQXgd90eWMuf4fwDGwDwF/3IWcI79eBILAAd3JoDwBk/EVh3GyKniQXAdMtZwoums2TqTsDhepeJot44PwigdWMLi7YPgN93W2DdNa9oRAFY5hkG3UksAIvcFFg/fgnWsk0B+GPu3cK6Ka+mViKxANTersqYR6UHnUYAenuKMSwAWITAAuAMAguAMwgsAM4gsAA447p7CTlbB+CBaGEBcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnsKbdHl0HQBggTdmawDgDgILgDMILADOILAAOIPAAuAMAguAMwgsAM4gsAA4g8AC4AwCC4AzCCwAziCwADiDwALgDAILgDMILADOILAAOOP/Hl2BP6rIyv8Hnrk0Lf/n++bCLMuz6r1hYC+l1V11QRFThRm8wKhfVzi2TlZM1ancZprlhSTfi0Z2rfsB1UWWG61+qsrPc1t9qqXeYLfztPxMfC8c3QM8owt+36n68E+dpdXCuF3yFXeOdj8+20oxBfFnd1PTRUwX1gjN+vWMlHiuX1+PfgiRUYpn37XOCof6zQfLx1XHzq6zSmjWv/1Mdp0AW3d/DXhWwz8J/I6FgXXotC/K49pSSj9dzEN/pojZwswDfvRlW4m7Znv2j+Bz0LCJv4a16azR21z3p7o478tcxxpYu8FnEvZSfigKw7B81y4Mw9D+GeJnDf4k8EuWBdbamh1fg1L6vPbwmytiWCWrmcCytaLaNszB9gnsLKX4bb0tgfVZx0y9serHXmB162IJrC9rF7DbMBv4kiSdmyIJrEdg0P2pbY+2pen77IrFqh6PurmIKx0H28nbITHb0Ndma1mYrybG0fJVNYC1Poy/SZKOU4NxUvafdShuu5leS5I8v/kn416PQWA9r3Q/stx2rHcVm28XcaVt0VtgJFjSf20sSI2kHb70vjCvpMmdy1bD2kiSjpOrpZIUSFJeNP/Er+Ms4fOqw8aLAl9SmtYH8zEejMH0Zcf1d4u4TpH0Op+J+e9+xzRpg9QPfOVZXhez+ZRVE2WBrS/ZlR6tHeFqA21ehYGU1ScXpf3U6cJcqlKqOrc4Wwv8kEf3S/+kBWNY9ZEbNEPop/p0326klK9Tc6QGC4uYrF1/ead+l8vlcjk3Y/pR962d3Om9dvlqzluGVdU/mxOGsb0K9Y4FxvBbdw0jbfz2Tf0xrGY7/qF602f3MxvhS9VgXGzbI/wKuoRPrBpp8U7t0V0PO1sHYSR54aHuL2XFbUVcyV/XydIrMOn80OuF7etWze5UBUrwUceGva+4qRYHpyVNm3ykJyyldb3Wn+uqpOBQl5mNfyhFv4W1oBb4AQTW06oO6rVxhHpVd2gibdb1gZ/dXMR1gmqDvUyqA6b8X2J9UXHcLjtUbZ+i915J0r5a0V7UIwAAH1lJREFUw/tY1hVrEnHwQvX/tXm1R1gnlj0spSqljMBizP1BCKynVR1zndHdyPbGrvot+e1FXKdubHSGy6s2VVRtrZsExyrcws5wVP2DZdi9Hg83moozRgbQ0yqnw+7AfR264ynephRj7g/FoPuz67QVvHX5YzZ+wNTf/cZ61xZxnaD3f0nNoR+GZXJkuT98UbG5hvyobFsNAyutznl6p8V1TlJrG6huvfUH7uMyQwvLh7Jtu5fpW/PP/0mK54f/cW8E1rNLO4f17Cn9Hypigu0qgbpfF3lBmT+JWYXqxf5JudDWGZSU1VeNLcqrsDzttznbXqyr1S/IO1W3JS7YAB6JLuHTqg6qdDNy3dCI+t3+7UVcp2oRddKn7hF6dQ/UzKK6gdVvA1VXqPevuG8uGD0sa1+VgWwdd0+rkobd4iAMwzAMuVjh2RFYT6v+tj/+txlpeljVceDfXsR16vaSpRJhkw2Z0S2t+3zLBq6bC0YP4xdXdVQNt70lpK/bMp4QgfW0ovrrvji+v/3b7hee16uTKbi9iGsUmzKKfDNOmh6h5A/PE9ZJsqjB1FwwujSv6iZWYRl3r09C0JByFmNYT8tbG72aLJMUBP74dFaVfZUMgXdzEbOyNguyeoaqzgQI1UnByJMUlYFzbAexbH3IUe/1Be6L80p+vJek43o4B1b5v6vyareT9J6oGmRP3iV5X9eUgDsisJ7XruhdF5Rlkh+thyPDzYm1PKkbUdGVRVwjHbbUDp1hIbOXGJXplt94VrLeVLZdfk6uOue3HZt/wqhJ3v18xj6Y9mLRrFcAft1jL7b/o5ZNLxNbf2HxoJShZlKouSIma9dfPra1oDubVH2CrqxD0N+kfU69kSq0hpPsdXfGKLY6EfrR39hw73ubGZvIT5L02WyFuWUehDGs57Y72zpC+3/zJ/2ae5tvL2K59We3ydFc01D+r7Pwdu9jV69bKlTG1GAGiVuVzbz2OndaWA9DYD01//B1GHZTstnprKK2YXVrEVc4rrp9xKqbVTVuqsDKp2epmldcUeVy9weXNtwaNFzn/jQIrCfnrQ/nr1McdSInHb/pTZIUdS4OvamIq6Qrs7T6EoYqqSznCa9zqJIvm55izxSWzcpjr1FW3+R8bQ16dz57XF/6MAy6O6B8rkvazmal/dQ5My8eDlxdWcQ04zE4ddNqG7Wn3ro9wuY8YVKPmldrL+2vHdbRf+V7j8tPFe6SQlKx/egsrWq0vG9ZYcz9aRBYzghDpfWVVHk+9iXvhWE0etp+WRGzovaEXVFdkWrO31cFVnMhVJVMeX1733XtnMNa3qHqDW6DpVlRXdCRdPuq1R4bu+7VF1eMXaJ2zOuqZlvV+7bV8MYi/AoCyyVhWM8L1U2b0/KDZ6yIG3kf/5XtlbbVklT/HFz8kNRzX1U/9+9Pri8x6M7hsJYUlVdWqdgsmg5LknZlNbad94fVoFbaztlXnyZ8k10beW2vt9wzAusRGMNyS30wf+Oa9TsUYarvvWkWjJZrXoNve2O6L3UWlr3b+jGCVwxjlbvZnZOv3vJw/O4H7gHATyCwnlWyWq1Wq1Xv1Jh3zff6HYq4wejgen3DztgofH1Nu23deuK+ZHQu0b7Isptena6DfPq5Wy1xV3QJH8PaLcrMF73qoCqsnaBFPaM7FLFY08KyPCKnllZ5EZZvznvPiqhvKrKt6rfDWEvz9vDfcFk9g83ms7v32T3PmeIHEViP4Xnlcd35qq+/5j2pPW57T5yxTSI65g5FLNbE1ERbJamutqjvcNx2Tg/Ul3na61UPY+n9vDBp/XjYGltXcyfn286FH8V4TzMKqnmV156q8bnyZkyGsB7l0Zfb/031vXcf7aL6SKwe7V6NiXefvF6fpi8X2m/waS0owmr5U3Pae3+qH+vbgqsJpiq9na133nwETv2YHa+7a+0bmplNR6ozuOPny5y2vVrW5NTa2PS5yUjrB3lqKxJIIw+yxm9gDOth6mN403RGmid8dq8QL1bGZUP1ZMELJ0i5QxHXqhtYpw6/+2Idcll7ifx+Vf1jPVav+rER2dKHwHqW26WbGRyMq/OP/2YeFS3V7T4uw3o0AutB6t5Qsflvm6Rpun3/V6dK1YGrj9zsv011bCWb5mntyzZyhyKu1b9qtPqxerHu9bWJtTqmRZbu/6s7hJ79bm0ZT1DdLx1wGs4v08aestV/2yRNj5v/zc3H2l7nbtxTiId5dDPvjxqdWr15Rqd56Hqd6XvrXtFcl3BBEVa3dwnriRp63abP/uLRg77uNdqqUGes92mrjmUSiHYuhnbpyOcejH+QgVQ9eHbX3wB+Fy2sx1mPNHGC5ojaGUd1kaZtO8Bb/ByJOxQxp778tCy77vT1Zk0Pqnc13bCx50nEU08hq/emWDpHfWgpbW3dc+9jvN3U9gPbthYehMB6GPucv+ajjUeO6iuednWPImY088ZLGusRDvqEYxWYfnKW1wxjLb1+dGcZEOs8Q7Wpjj/6gZQhG0o89PkJEFiPc7AcTrF574n3aRvQCT+vCJs7FDGjPnuwPaqahlmWc/51U6e56ME7DSvmf8zMKtoMYy29ftS3fSmsP/vV807B+GVpRkox5v5wBNYDxee4e5isz70M2332j7jwY/HTj+9WxLS6+ESjPcK2T9hepeXtTt13+fHn7FOpm370duGt07FtT/1T94lh63MwcV0VY+7P5E0anfgWvyBJq1aJH9inWSiSLK+GfgI/iG6JmjsU8TPyJKsmzwqDX579IEuq52eEwcwM9/8yVX3V/VZSOD4vNX7aG4H1FPJi7mu7yPzv5swdivgRRfawx25lS5pLW6l6OkWaSgpmm4H4MQQWAGe8MYYFwB0EFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwBoEFwBkEFgBnEFgAnEFgAXAGgQXAGQQWAGcQWACcQWABcAaBBcAZBBYAZxBYAJxBYAFwxv89ugKLvFX/v1T/vvSWa2RZuby/ZLmL8e+33rJ+PabeO/ae7v5cX09z/f5nMbU9Wxm2f99Sp7F6mqXZfp77DG2/94m6X13x4b6P/o7v86FcUaexz8X291+/Z/r32i2rvy3be5+EG4H1PZdf+wN7KXf81N6e8C/fBW/PGBmP9RcCyxFPFqt3rc7bU35bO6D8LRD4jT8RWDSxngC/g294k4h8SX8ksLAcufK0SC0RWM/jKZLiKSqBCX/9N8RlDWj99aMBT4/Awu97Ixm/7Y9+hnQJn8Qf+/PjtOH3/bE/mRItLDzIH20i4FtoYeFhwUFi4VoE1nN43LFLasAhdAkBOIPAAuAMAgt4BX/kHAaB9RT+xh/bqD+++3fyJyKLwMIT+AuH2i/4A5H1dwKL6xSf2R841H7Fy3+Ofyewntmr/5Xh97z43xKBBbyU125k/aHAok+Iv+GVE+sPBRae3isfabiLvxRYNLGeHomFaX8psKCnj4Qnr55DXvSTJLD+lqf/M376CjrjNT/JPxVY9Akd+CN2oIqOeMlP8k8F1tVe7VfuxP689mn53/SKHySBhafzigca7oPAwvMhsTCCwJrEkfMYfO6wI7AAOIPA+iMca7M4Vl38FgJr2qscOM7th3MVxq8gsB7sdw5MDn+8BgLrLyCv/rYX+v3zXMIZby9wefyP/L3Wn8tb++8XOi5ezCv8FZcIrMdy7Ri/TNX4Irm3R3AKgfX67hUhL/Mt/dsuRitUUqdV2vysctkP5f3LNLEYw5rjfIvhTjtwueJP/nLNm2H6qQ/O+T/jCi2sV/egv9SfayzgLyOwHuqlj+nJ8S4scNGL/4lcjy7hLLf/Yr5be/p2eCa0sF7bN/OKuHoKtFUbtLAe6dn/DJ8hr579M/odnMWoEFjznuaQuf6P9ltV5yB5Jpx5lURgvbbv5dW9avHNop7m++LhiCwCC2PuenB861AjsRokFoG1wJMcMU7/tTpd+efx5xtZBBZ+xzeOtCf5wsATILDwS/562wD3QGAt8RRf8c4f8Ld3Z57i88czILCAv8Tx8CewXOF8A+s7HD/KcDcEFjr+dC7+CW6HP4G1iHu/5Btr/Kx55d4v4Kfd/pty+rMksBzxrEmCR/mbl2QRWDA87zHgdLPgh9z623L5sySwlnHtd3xbfZ83rwBJBNbDXJkoRAkgAutFudYgxK9y+M/j7wbWlW2Wx/6OaWAB0l8OLDwO+ftg7jaxCKzH+Nm/GHf/HoFJfziwHPqad6iqy7zcDrnG2a+0PxxYeCASCzchsB7C2S844KH+cmDxLf9AfPiP5epX5l8OLACO+dOB9bBveVe/3u6JJhZu8KcDC44h6O/H0c+SwMKD0MTC9QisB3D0yw14OAILj2rr3LBZov5+3PwsCSwAziCwft+zfbU9bDCJUSxci8CCS54t7F3m5GdJYAFwBoH16677Yvv5bhMds5fwR36NBBYAZxBYz+2PfG/i+/7GnwqB9duebajTsb/zZ/v4XObiZ0lgAXAGgfXULYynrhyey5/4YyGwfpmLzXDgWRBYf+OLCXgJBNYzI0uHaKL+aQQW8CL+wvcbgfW7v2faB8A3EFjX+sXI+QvfmMA1CCwAziCw9JstmauaZzSwcJ0/8BdDYF2NYajH4vP/ywgsAM4gsH4TPULgWwis69EnAR6EwAJexuu3ygmsZ/X6f3vA1QisG9AnBB6DwALgDALrSdEjBIYIrFvQJ3wkPv0/jMB6TjSwAAsCC4AzCCwAziCwbvLTwyj0CAEbAgt4HS//TUdgAXAGgXWbn+0Tvvz3JHAbAuuXcPEQ8H0EFgBnEFg3osUE/D4CC4AzCKzfQYMMuAMCC4AzCCwTlxMAT43A+hX0CIF7ILAAOIPA6qBPCDwzAus30CME7oLAAuAMAquLPiHwxAisX0CPEL/k5f/UCKwemljA8yKwADiDwPp5L99MB34LgfUdRBHwqwgsuIZhxj+MwPpxNMOAeyGwADiDwPoWWk/AbyKwfhqZBtwNgfVEGE3G97z+tyOB9T2v/xcCPBECC4AzCKwfdkUTjB4hMIPA+ib6hL/t/9u72/M2sS0MoFvPMw2oBbfgW4JTQlrwlJApwSkhKSEpwS4hKSEuwSmB+0PoW0LoCAQb1voxSQTSPoMOL4dPyfU5E1gwFTPYegqsftkjhA4JrFvNYKsGYyGwxsIACy4SWL0y/IIuCaybCSXGYQ49UWCNhD3CliyoWRNYfZrDJg/uSGDdTiwxBrPohwJrHOzoQAsCC2Yq41ZSYHXg9rH4gF0n2Y5ExpWM7ggsmIRkW55CAgtIQ2CNwaD7OfPYMk/e9V9jyr1rgUUmKVcyuiOwgDQEFvYJSUNgMRhJOaSce9cCi0TBkXMlozsCC0hDYDGUPAO7KUo6WBVYTZJ+qZPl+5g9gcVADLC4nsBqZJPONGXt2QKLYRhgUUBgAWkIrGZZR86jZ4A1qLT9WmANLG3PgQEIrK4YMlzD0hpU3s2kwLog5Vc7+kbLK8oIrGGNPlpgTATWJa0jZUyjhpHn4JgW1RyNvHs0EViDStxzYAACC2Ym82ZSYF2U8usta/SId9VSfgt0TmB1ZwK/WzLixOJI4bc1ul53DYE1UYW9cqyJlXol68lYv6teCazLrl5ZMvekzG2fl9JvKnf2CywSyL2S9WKmWxaB1ULb1WWmfYhMkme/wGL8kq9kdEdgdc9AC3oisNqwT9iFxTwPE9MlgcWdFKe5vGJDYHEfRp90QGC1cs1GfkRr5ojGJuVLZUT/EyMwot41iH+GbsC0LKazdi26TIq5r2ZdsRyNsCbtpszpbu245ZOmswm4WfFZiwkRWO1kXW1uSywryIj4NiIEVvdadqscCWgdGQ1fRUQIrNZaBszoutWNwWizPgoL30NNYA3jfgOsHEM5mkirDWcJO6ZvbVgUHbAQ9wmsyasG6fNWtA50uBCH6QXdE1iDuOt+Wjd9dZH0F8+ImNCBAYE1A11tXRcxoZ5/R4vNfw5fbPFaJ6bzrQksrtKwThlXjdV08kpgDeLeHaiPAxiLM3+HHrmsYRYmtIll1gTWAAaIj3SJla7B3IXAmolkAZCsudyLwGKE5BWnCaz7szZeYglxhsBidOQV5wgsxkZecZbAursB18cUUZCikQxEYM1KgjBI0MQkqikuSoE1L6Pvw6NvYBrTXJIC694G7kcj78Yjb14iE12SAosRmehaRmcE1p1ZJRtYOFwgsIA0BBZMzJQHqp6HdV9T7kuMwrS7mBEWYzDJa4YGMfEFKbCuNfEOMQwLtSOTD367hHc19e5UyGLpxgyWoxHW1WbQK0hpDj3TCOue5tCjGMg8OpcRFkzBPPJKYBWYVteY1v8NEyewZm+4E0uykmsJLAYKjsmfgacHAquANe124ooSzhJyf8KKQkZYJaxwDK6a5SBVYLE1xzUgq5l+V3YJ2VFFLIZuA5xnhFVkppu328xyF6Zrc1+GRljcxdxXtA5YhCGwOKfqcOfQqnYby29jYWkAOSwcwwLyEFhAGgILSENgAWkILCANgQWkIbCANAQWkIbAAtIQWEAaAgtIQ2ABaQgsIA2BBaQhsIA0BBaQhsAC0hBYQBoCC0hDYAFpCCwgDYEFpCGwgDQEFpCGwALSEFhAGgILSENgAWkILCANgQWkIbCANAQWkIbAAtIQWEAaAgtIQ2ABaQgsIA2BBaQhsIA0BBaQhsAC0hBYQBoCC0hDYAFpCCwgDYEFpCGwgDT+GboBI/L+8/f771g+Pn5+PDPHW/3n43L/5bffbxGPj0+fT7ylYVrrOUsL5C/eR8PyF5+3iqqqqo/n7SJ5+nVylm/r6a+7r74+bN738HLwjqZprecsLZC/eB8Ny198xiJCYK382B80fTsxy8dmlt3Aet5739NH1XLavoY5SwvkL95Hw/IXn7OIEFhVVe0MntZOJNaXzcSdwHo+eN/jR7tp+xrmLC2Qv3gfDctffNYiQmBVVVX9WsahH0fzbKdtA+vL0fs+t5q2r2HO0gL5i/fRsPzF5y0iBFZVVdX6KPvy6Wl97GB5uFF72nafTWBtQuzxaTP5W4tp+xrmLC2Qv3gfDctffOYiQmBV2x3Cl6raHu58Pj1PxE5g1SdwHn9VVfWnTr2HFtP2NcxZWiB/8T4alr/4zEWEwKo2g6d6K/ZRJ9beEGv1Yr3nuA6sP6t/Lv/sve/14rR9DXOWFshfvI+G5S8+dy4cjYiI99X1VU/1oc7ly+rPn7vzfH2PiOeDC7TqOZ5XfWpZH3p4uzit9aeUFshfvI+G5S9OGGFV1Y/VgtgeJlh1ld0DnX8iIpYf9VBsvbWrx+5/1nOt/vl4cdq+hjlLC+Qv3kfD8hefu4gQWJuTMturRVdDreXOLE8RES/VQWAtD+arB2AXp+1rmLO0QP7ifTQsf/G5s0u4a7u/t+oyf39vXvj5FhFPh2eb//49eF99uOHtwrTWn1JaIH/xPhqWvzgCq8nfzV/+i4h4OZz++/CFh+37mqa1/pTSAvmL99Gw/MURWE0227Sv7xHx5eiW6LoLHb3++8K01p9SWiB/8T4alr84AmvHdsz9vj/h/Wtsz9bsOOpCy3bTWn9KaYH8xftoWP7iCKyIzcZsE1h/Dw4X/BsR8a1Fvzn3WJpL01rPWVogf/E+Gpa/+PwIrNj0iO/rowRf9w8XrI64X/FUoqbBe/uBfcOcpQXyF++jYfmLz4jAioiHVWKtDq1HfP9av/6+8/LR4xyAuxNYERH1Je7f//f9/e/bv/+uX16dnlkdcX849T7grjwiOSLi+etqMPX73+Np718j4uH4iDtwd0ZYEXHiEqut1kfcgb4JrIiI+Lx/iGrngY8/3yLi81Nco2n3sf2uZcOcpQXyF++jYfmLz4hdwpXn2NkbfHn4HhGrs4ffIyKW9eH49QVaP99OD8rqEzknh2NN01rPWVogf/E+Gpa/+PwIrNrz43/11VfLb5/rfNp0ke8HM3+PiJcTF8jsXA7RNG1fw5ylBfIX76Nh+YsjsDYeX9/f3n8vHx63F1xd2hGsA+398PWHC9Naf0ppgfzF+2hY/uIIrB0Pm0NXq85ysYcc3ZX6vn29aVrrTyktkL94Hw3LX5wIz9k5YdU3nqtq76cnjhfb4RKsR/Mfl6bta5iztED+4n00LH/xudtfMPP1+vr6+vq6ecRj/asl36rqQmDVE9dP/vtY/XP1ewFN0/Y1zFlaIH/xPhqWv/jcuaxh5dOnT58+fdqcJ6yPsX+OiHh53VVv7F5eX18jNsdH1w9/r/9cdbimafsa5iwtkL94Hw3LX5wwwqrWD6Vdb9PqR7w/nZjx4BHJ9VBsuXrjn/pjflyctq9hztIC+Yv30bD8xecuIgRWtfll8OWPqqqq9QVWp3668iCw1ocXlt+q7e8ZPrSYtq9hztIC+Yv30bD8xWcuIgRWVVWvUVtuf2r35K+UHAbWj+0bNxdtfWsxbV/DnKUF8hfvo2H5i89cRAisqtr8stKuX6fmOwysE298bDXtUvnHNh8y7eJ9NCx/8XmLCIFVVVX1cXR58ekt2lFgHb1x+afVtAvlt3OWFshfvI+G5S8+bxEhsKqqOu4iZ0bgR4F1+MbH3YFZ07TG8rtzlhbIX7yPhuUvPmsRIbBWPnafePX4emau48Cqqi87d6V+Obi6r2la6zlLC+Qv3kfD8hefsYgQWGt/XlabtYfnK88gf7zU18+8HA/cm6a1nrO0QP7ifTQsf/H5ilhErG8FIOL9vfQCvbfH84//aJrWes7SAvmL99Gw/MVnaSGwgCwWbs0B8hBYQBoCC0hDYAFpCCwgDYEFpCGwgDQEFpCGwALSEFhAGgILSENgAWkILCANgQWkIbCANAQWkIbAAtIQWAAAAAAAAAAAAAAAAAAAwCgsIqqh2wDQwsLTGoA8BBaQhsAC0hBYQBoCC0hDYAFpCCwgDYEFpCGwgDQEFpCGwALSEFhAGgILSENgAWkILCANgQWkIbCANAQWkIbAAtIQWEAaAgtIQ2ABaQgsIA2BBaQhsIA0BBaQhsAC0hBYQBoCC0hDYAFpCCwgDYEFpPHP0A0AxmURERHV+i8Nqv35L/69+XPaMMICTmufI3cjsIA0BBZwxviGWAILOKerxLp4NKwtgQX0rLO8cpYQOKU+x9c6a3bPCR6/XvbeY0ZYwHkjO4wlsIA0BBbQYFxDLIEFNGlIrO4OprclsIBSd08sZwmBRk1nCm9NrGt3OI2wgGYjOowlsIA0BBaQhsAC0hBYQBrOEgIXND99tOz+wd13uZcQ6FLXl48WnnkUWMDdlV4pIbCAFsZxh47AAtro8vLR4s8SWMCNrh1ilWffYlTX3QODOxc/TfcUrlNke77vmhBrm0ELIyygpRGMbQQWcLOj8VRPB+IFFtDS8GcKBRbQVuudwqsujL+CwAI6sDj7jy65lxA4YTUQWhz9vY2mOasTdxG6lxC4r3Z5duOZRoEFdOIex90FFnA3t17KJbCAblweYt186anAAjrS/06hewmBPbuxczIdzudSq5sIj88/tuVeQuBa51Nm0fcoS2ABaQgs4EoNQ6yeD2MJLOBagx34FlhAGu4lBE4o+93Aa108I3nACAtIQ2ABaQgsIA2BBaQhsIC+dXa83llC4IKb82ax+znHTzFt//lGWEAaAgtIQ2ABhe5/h47AAkrdPbEEFpCGs4TACW3O5V37LJlzn+l3CYEJElhAGgILSENgAWkILCANZwmBE86ds9s5o9f6JOGpz6ouTD/NCAvoWXc/pSOwgCL9/zD9MYEFlLgmrzrLNoEF9K6rxBJYQIEhdggjFgP+iCswQm1+K/D6uDr9Sdf9LuHCCAu4h25GZAILSENgAdcqGS51MsQSWEAaAgu4UsNgqeHIeRdDLGcJgT3HzwKNnVfihuQp+y3CLWcJge70PvoRWMBVynftbt8pFFhARy4OsG5OLIEFXGOYe3JqAgu4QtkZwhbvblvdWUJg6/gsXvuYOT63eHqOU5/sXkJgUgQWcEe37RQKLCANgQXc001DLIEF3NUtieUsIbDn/hdatc0gZwmBRAQWkIbAAtIQWEAaAgtI45+hGwCM1+V7A9czXXsH4u4nt38GqREWcJN7XhglsIA0BBYwgLLLUwUWMISixBJYQBrOEgLlDo64XzNs2s7b/rC9ERbQ7LbHuHdKYAGNBv2ZnAMCCyh192dTCSygyYh2CAUW0GhMO4TOEgKl6gFW828Llt2HeI4RFnDeuAZYAgs4r/1vOPdQ4ASBBZTo6Ij7dYklsIA0BBZQoLNLGq4aYjlLCJxQRXOWNN0JePy+quGjFu4lBG42sjOEEQILOKPTvOpoD1JgAXfQTWIJLOCU3i/Baldqn8ACrlSUV01vap1YiyHuuAbGa6hj7ZeTaGGEBeQhsIA0BBaQhsAC0hBYQBruJQT2jPm6ASMsIA2BBaQhsIA0BBaQhsAC0hBYQBoCC0hDYAFpCCwgDYEFpCGwgDQEFpCGwALSEFhAGgILSENgAWkILCANgQWkIbCANAQWkIbAAtIQWEAaAgtIQ2ABaQgsIA2BBaQhsIA0BBaQhsAC0hBYQBoCC0hDYAFpCCwAAIDZ+j/knzGuJj7SFwAAAABJRU5ErkJggg=="}, + "messages": [], "tracking_code": "9400100208303109973555", "fees": [{"object": + "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": + false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": + true, "refunded": false}], "tax_identifiers": null, "created_at": "2025-06-12T20:30:55Z", + "updated_at": "2025-06-12T20:30:55Z"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '72280' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 5b2f8479684b38ffe2bb2939008b468b + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb32nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq e8fe6f4ec2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.814444' + x-version-label: + - easypost-202506122002-4fcd94d6be-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_shipment_create_empty_objects.yaml b/tests/cassettes/test_shipment_create_empty_objects.yaml index 92101098..8e9f2cb3 100644 --- a/tests/cassettes/test_shipment_create_empty_objects.yaml +++ b/tests/cassettes/test_shipment_create_empty_objects.yaml @@ -7,7 +7,7 @@ interactions: "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": 15.4}, "customs_info": {}, "options": null, "tax_identifiers": null, "reference": - ""}, "carbon_offset": false}' + ""}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '599' + - '575' Content-Type: - application/json authorization: @@ -27,95 +27,73 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:40Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:41Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_23176c10f40711ed99113cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:40+00:00", "updated_at": "2023-05-16T16:31:40+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_90174cdd27e14b87aa4b1acde0df3fe3", "created_at": "2025-03-07T16:46:27Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:46:27Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_b65e45c8fb7311ef9df83cecef1b359e", "object": + "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_44a2f6b4a91b4ecd83b21da5e5b93c6d", - "object": "Parcel", "created_at": "2023-05-16T16:31:40Z", "updated_at": "2023-05-16T16:31:40Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_87efb4b5d79f45398f5e0c0ff7b8cfe9", + "object": "Parcel", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_54d99b19d719480e8e0e41348c9ecf6f", - "object": "Rate", "created_at": "2023-05-16T16:31:41Z", "updated_at": "2023-05-16T16:31:41Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_6b58000596a1410cb683c886c5d3e153", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ef1cc87c2f98443ca90529a70b41642a", - "object": "Rate", "created_at": "2023-05-16T16:31:41Z", "updated_at": "2023-05-16T16:31:41Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_6b58000596a1410cb683c886c5d3e153", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6db9842202fd46c7940c0db418f7a49c", - "object": "Rate", "created_at": "2023-05-16T16:31:41Z", "updated_at": "2023-05-16T16:31:41Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_678f8456b73a4c799a9536d47a05c415", + "object": "Rate", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_90174cdd27e14b87aa4b1acde0df3fe3", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_bd9ec1df48074da1822025158938362d", + "object": "Rate", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_6b58000596a1410cb683c886c5d3e153", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2db10f2e8fba4318ac2a92594630d7c0", - "object": "Rate", "created_at": "2023-05-16T16:31:41Z", "updated_at": "2023-05-16T16:31:41Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6b58000596a1410cb683c886c5d3e153", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_23151d47f40711ed99103cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:31:40+00:00", "updated_at": "2023-05-16T16:31:40+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_23176c10f40711ed99113cecef1b359e", - "object": "Address", "created_at": "2023-05-16T16:31:40+00:00", "updated_at": - "2023-05-16T16:31:40+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_90174cdd27e14b87aa4b1acde0df3fe3", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d8d0020c93f848a99e1e7c17b091ab63", + "object": "Rate", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_90174cdd27e14b87aa4b1acde0df3fe3", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b659cd7dfb7311efa4d4ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": + "2025-03-07T16:46:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_23151d47f40711ed99103cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:40+00:00", "updated_at": "2023-05-16T16:31:40+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b65e45c8fb7311ef9df83cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b659cd7dfb7311efa4d4ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_6b58000596a1410cb683c886c5d3e153", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '5851' + - '4325' content-type: - application/json; charset=utf-8 - etag: - - W/"e20fada0452013bea41fb951d4f7c860" expires: - '0' location: - - /api/v2/shipments/shp_6b58000596a1410cb683c886c5d3e153 + - /api/v2/shipments/shp_90174cdd27e14b87aa4b1acde0df3fe3 pragma: - no-cache referrer-policy: @@ -131,20 +109,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e06463afece7872f7e0027a679 + - 6eaaf8fe67cb22e3e2aabd5c000aeba3 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.851051' + - '0.266752' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_create_tax_identifier.yaml b/tests/cassettes/test_shipment_create_tax_identifier.yaml index 75db9fc7..c0bddaa7 100644 --- a/tests/cassettes/test_shipment_create_tax_identifier.yaml +++ b/tests/cassettes/test_shipment_create_tax_identifier.yaml @@ -7,7 +7,7 @@ interactions: "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": 15.4}, "tax_identifiers": [{"entity": "SENDER", "tax_id_type": "IOSS", "tax_id": - "12345", "issuing_country": "GB"}]}, "carbon_offset": false}' + "12345", "issuing_country": "GB"}]}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '630' + - '606' Content-Type: - application/json authorization: @@ -27,96 +27,74 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:42Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:42Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_23bf3a2df40711ed8804ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:42+00:00", "updated_at": "2023-05-16T16:31:42+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_6bb281b7493b4f678e1922b18abd6230", "created_at": "2025-03-07T16:46:27Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:46:27Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_b695897dfb7311ef9f53ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_fd46ecf1f95048aca2cf1dffc3750b72", - "object": "Parcel", "created_at": "2023-05-16T16:31:42Z", "updated_at": "2023-05-16T16:31:42Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_d7554c3efce24584ad33b0289b842f4e", + "object": "Parcel", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_4f633c78eb55470595904907899c5e42", - "object": "Rate", "created_at": "2023-05-16T16:31:42Z", "updated_at": "2023-05-16T16:31:42Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_a930a24971e0445dbe4d11e13c1124f7", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_178ee3048d5a4247a5a0b594a94355cd", - "object": "Rate", "created_at": "2023-05-16T16:31:42Z", "updated_at": "2023-05-16T16:31:42Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_a930a24971e0445dbe4d11e13c1124f7", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_7623583729c44698a95fbcf482d3e267", - "object": "Rate", "created_at": "2023-05-16T16:31:42Z", "updated_at": "2023-05-16T16:31:42Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_64bd7a7fe66c423b8af7a9d220e23f3b", + "object": "Rate", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6bb281b7493b4f678e1922b18abd6230", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_55ab1b175d964f7588f9307843d993b3", + "object": "Rate", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_a930a24971e0445dbe4d11e13c1124f7", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_899387729fa04814937c06c7fcb8bb1d", - "object": "Rate", "created_at": "2023-05-16T16:31:42Z", "updated_at": "2023-05-16T16:31:42Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_a930a24971e0445dbe4d11e13c1124f7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_23bc5a2bf40711edb329ac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-16T16:31:41+00:00", "updated_at": "2023-05-16T16:31:41+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_23bf3a2df40711ed8804ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T16:31:42+00:00", "updated_at": - "2023-05-16T16:31:42+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_6bb281b7493b4f678e1922b18abd6230", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f8b6ad305532462f9aa5b1a5db1a91a9", + "object": "Rate", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6bb281b7493b4f678e1922b18abd6230", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b693b98cfb7311ef9e0d3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": + "2025-03-07T16:46:27+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_23bc5a2bf40711edb329ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:41+00:00", "updated_at": "2023-05-16T16:31:41+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b695897dfb7311ef9f53ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b693b98cfb7311ef9e0d3cecef1b359e", "object": + "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_a930a24971e0445dbe4d11e13c1124f7", - "object": "Shipment", "tax_identifiers": [{"entity": "SENDER", "tax_id": "HIDDEN", - "tax_id_type": "IOSS", "issuing_country": "GB"}]}' + {}}, "forms": [], "fees": [], "object": "Shipment", "tax_identifiers": [{"entity": + "SENDER", "tax_id": "HIDDEN", "tax_id_type": "IOSS", "issuing_country": "GB"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '5953' + - '4427' content-type: - application/json; charset=utf-8 - etag: - - W/"e0aa8a3574991e5ac8f609149141740f" expires: - '0' location: - - /api/v2/shipments/shp_a930a24971e0445dbe4d11e13c1124f7 + - /api/v2/shipments/shp_6bb281b7493b4f678e1922b18abd6230 pragma: - no-cache referrer-policy: @@ -127,27 +105,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e36463afede7872f7f0027a6e0 + - 6eaaf8fb67cb22e3e2aabd5d000aec2f x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb39nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.866583' + - '0.232970' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_create_with_carbon_offset.yaml b/tests/cassettes/test_shipment_create_with_carbon_offset.yaml deleted file mode 100644 index 4d137310..00000000 --- a/tests/cassettes/test_shipment_create_with_carbon_offset.yaml +++ /dev/null @@ -1,157 +0,0 @@ -interactions: -- request: - body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 - Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": - "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, - "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": - "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": true}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '519' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/shipments - response: - body: - string: '{"created_at": "2023-05-16T16:31:48Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:49Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_27b0f068f40711ed9720ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:48+00:00", "updated_at": "2023-05-16T16:31:48+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_3d5da6ffe19146ada9bcccbef087493f", - "object": "Parcel", "created_at": "2023-05-16T16:31:48Z", "updated_at": "2023-05-16T16:31:48Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_61b72dba67bf4bc98cbce1a9a97cfa9b", - "object": "Rate", "created_at": "2023-05-16T16:31:49Z", "updated_at": "2023-05-16T16:31:49Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_995126fca8b747d7a4fe50b2b91a10e1", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "carbon_offset": {"object": "CarbonOffset", "grams": 36, "price": "0.11", - "currency": "USD"}}, {"id": "rate_4de7b0ebbd1d4c5ba9e200735a760a17", "object": - "Rate", "created_at": "2023-05-16T16:31:49Z", "updated_at": "2023-05-16T16:31:49Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_995126fca8b747d7a4fe50b2b91a10e1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_203ff3eaed4f4b37b62d579b992d388d", - "object": "Rate", "created_at": "2023-05-16T16:31:49Z", "updated_at": "2023-05-16T16:31:49Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_995126fca8b747d7a4fe50b2b91a10e1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_51045f28155641719bdc71bd99e8658e", - "object": "Rate", "created_at": "2023-05-16T16:31:49Z", "updated_at": "2023-05-16T16:31:49Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_995126fca8b747d7a4fe50b2b91a10e1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}], "refund_status": null, - "scan_form": null, "selected_rate": null, "tracker": null, "to_address": {"id": - "adr_27ae6a8ef40711eda8a13cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:48+00:00", "updated_at": "2023-05-16T16:31:48+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_27b0f068f40711ed9720ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T16:31:48+00:00", "updated_at": - "2023-05-16T16:31:48+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_27ae6a8ef40711eda8a13cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:48+00:00", "updated_at": "2023-05-16T16:31:48+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_995126fca8b747d7a4fe50b2b91a10e1", - "object": "Shipment"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '6191' - content-type: - - application/json; charset=utf-8 - etag: - - W/"5f21bf2461c3b6199f589f838202f082" - expires: - - '0' - location: - - /api/v2/shipments/shp_995126fca8b747d7a4fe50b2b91a10e1 - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e26463aff4e7872f9c0027a961 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb8nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '0.994876' - x-version-label: - - easypost-202305152249-750e1e7d95-master - x-xss-protection: - - 1; mode=block - status: - code: 201 - message: Created -version: 1 diff --git a/tests/cassettes/test_shipment_create_with_ids.yaml b/tests/cassettes/test_shipment_create_with_ids.yaml index 2b27a813..37404af1 100644 --- a/tests/cassettes/test_shipment_create_with_ids.yaml +++ b/tests/cassettes/test_shipment_create_with_ids.yaml @@ -22,8 +22,8 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_246c9684f40711edb466ac1f6bc7bdc6", "object": "Address", - "created_at": "2023-05-16T16:31:43+00:00", "updated_at": "2023-05-16T16:31:43+00:00", + string: '{"id": "adr_b6ca70bbfb7311ef9f6dac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -36,12 +36,10 @@ interactions: - '461' content-type: - application/json; charset=utf-8 - etag: - - W/"b432e3d3df2b21851b2e66c4e2310bf0" expires: - '0' location: - - /api/v2/addresses/adr_246c9684f40711edb466ac1f6bc7bdc6 + - /api/v2/addresses/adr_b6ca70bbfb7311ef9f6dac1f6bc539ae pragma: - no-cache referrer-policy: @@ -52,25 +50,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afefe7872f800027a73c + - 6eaaf90167cb22e3e2aabd75000aec9c x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.047270' + - '0.052364' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -99,8 +99,8 @@ interactions: uri: https://api.easypost.com/v2/addresses response: body: - string: '{"id": "adr_249c7c44f40711ed8ac3ac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:31:43+00:00", "updated_at": "2023-05-16T16:31:43+00:00", + string: '{"id": "adr_b6d6d8a7fb7311ef9f72ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -113,12 +113,10 @@ interactions: - '461' content-type: - application/json; charset=utf-8 - etag: - - W/"bbc1fd04e6558270728ced29b2f81442" expires: - '0' location: - - /api/v2/addresses/adr_249c7c44f40711ed8ac3ac1f6b0a0d1e + - /api/v2/addresses/adr_b6d6d8a7fb7311ef9f72ac1f6bc539ae pragma: - no-cache referrer-policy: @@ -134,20 +132,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afefe7872f800027a763 + - 6eaaf90167cb22e3e2aabd75000aecb3 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.036120' + - '0.053079' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -174,8 +172,8 @@ interactions: uri: https://api.easypost.com/v2/parcels response: body: - string: '{"id": "prcl_15d259708d9c4231bbe4d6c38d032e87", "object": "Parcel", - "created_at": "2023-05-16T16:31:43Z", "updated_at": "2023-05-16T16:31:43Z", + string: '{"id": "prcl_16e46f5f5e6b4d01817d81a01382b58f", "object": "Parcel", + "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": 15.4, "mode": "test"}' headers: @@ -185,12 +183,10 @@ interactions: - '229' content-type: - application/json; charset=utf-8 - etag: - - W/"902396e46ebf1a381d30cb4b9f342f1f" expires: - '0' location: - - /api/prcl_15d259708d9c4231bbe4d6c38d032e87/parcels + - /api/v2/parcels/prcl_16e46f5f5e6b4d01817d81a01382b58f pragma: - no-cache referrer-policy: @@ -206,29 +202,29 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afefe7872f800027a76c + - 6eaaf90167cb22e3e2aabd75000aecd5 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.025857' + - '0.025819' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"shipment": {"from_address": {"id": "adr_246c9684f40711edb466ac1f6bc7bdc6"}, - "to_address": {"id": "adr_249c7c44f40711ed8ac3ac1f6b0a0d1e"}, "parcel": {"id": - "prcl_15d259708d9c4231bbe4d6c38d032e87"}}, "carbon_offset": false}' + body: '{"shipment": {"from_address": {"id": "adr_b6ca70bbfb7311ef9f6dac1f6bc539ae"}, + "to_address": {"id": "adr_b6d6d8a7fb7311ef9f72ac1f6bc539ae"}, "parcel": {"id": + "prcl_16e46f5f5e6b4d01817d81a01382b58f"}}}' headers: Accept: - '*/*' @@ -237,7 +233,7 @@ interactions: Connection: - keep-alive Content-Length: - - '223' + - '199' Content-Type: - application/json authorization: @@ -248,95 +244,73 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:43Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:44Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_246c9684f40711edb466ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:43+00:00", "updated_at": "2023-05-16T16:31:43+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_15d259708d9c4231bbe4d6c38d032e87", - "object": "Parcel", "created_at": "2023-05-16T16:31:43Z", "updated_at": "2023-05-16T16:31:43Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_6e799193731b482da2e69b504ad2b781", - "object": "Rate", "created_at": "2023-05-16T16:31:44Z", "updated_at": "2023-05-16T16:31:44Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "5.85", "currency": - "USD", "retail_rate": "5.85", "retail_currency": "USD", "list_rate": "5.85", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_830a7745d7244fecbf79a13ca495abdc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_35ce07db23ed4838b90c7eddc51eb666", "object": "Rate", "created_at": - "2023-05-16T16:31:44Z", "updated_at": "2023-05-16T16:31:44Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "25.25", "currency": "USD", - "retail_rate": "29.20", "retail_currency": "USD", "list_rate": "25.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_830a7745d7244fecbf79a13ca495abdc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_968c5eb28caa4864acb3cb8feedd6303", "object": "Rate", "created_at": - "2023-05-16T16:31:44Z", "updated_at": "2023-05-16T16:31:44Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.47", "currency": - "USD", "retail_rate": "6.99", "retail_currency": "USD", "list_rate": "6.99", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_830a7745d7244fecbf79a13ca495abdc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_2eb934a430d446b4965ea55c2c4cd5e7", "object": "Rate", "created_at": - "2023-05-16T16:31:44Z", "updated_at": "2023-05-16T16:31:44Z", "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.00", "currency": "USD", - "retail_rate": "9.35", "retail_currency": "USD", "list_rate": "7.64", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 1, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 1, "shipment_id": - "shp_830a7745d7244fecbf79a13ca495abdc", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_249c7c44f40711ed8ac3ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:31:43+00:00", "updated_at": "2023-05-16T16:31:43+00:00", + string: '{"id": "shp_3660b5de40c842cf95732770ca03c71e", "created_at": "2025-03-07T16:46:28Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:46:28Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_b6ca70bbfb7311ef9f6dac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 1, "return_address": {"id": "adr_246c9684f40711edb466ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T16:31:43+00:00", "updated_at": - "2023-05-16T16:31:43+00:00", "name": "Jack Sparrow", "company": null, "street1": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_16e46f5f5e6b4d01817d81a01382b58f", + "object": "Parcel", "created_at": "2025-03-07T16:46:27Z", "updated_at": "2025-03-07T16:46:27Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_117851bcd53a4b6abe0512532d77c6af", + "object": "Rate", "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "6.54", + "currency": "USD", "retail_rate": "9.35", "retail_currency": "USD", "list_rate": + "7.99", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_3660b5de40c842cf95732770ca03c71e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_412094b9476f41bcab56c1749a7c29c4", + "object": "Rate", "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "5.65", + "currency": "USD", "retail_rate": "8.35", "retail_currency": "USD", "list_rate": + "6.33", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_3660b5de40c842cf95732770ca03c71e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_568831d4eadf4d008d81fbc80459910c", + "object": "Rate", "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "27.60", + "currency": "USD", "retail_rate": "31.95", "retail_currency": "USD", "list_rate": + "27.60", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_3660b5de40c842cf95732770ca03c71e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b6d6d8a7fb7311ef9f72ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": + "2025-03-07T16:46:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_249c7c44f40711ed8ac3ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:43+00:00", "updated_at": "2023-05-16T16:31:43+00:00", "name": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 1, "return_address": + {"id": "adr_b6ca70bbfb7311ef9f6dac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_830a7745d7244fecbf79a13ca495abdc", - "object": "Shipment"}' + {}}, "buyer_address": {"id": "adr_b6d6d8a7fb7311ef9f72ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:27+00:00", "updated_at": "2025-03-07T16:46:27+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '5854' + - '4329' content-type: - application/json; charset=utf-8 - etag: - - W/"c573b9dd80e322649943bd3ade22c33e" expires: - '0' location: - - /api/v2/shipments/shp_830a7745d7244fecbf79a13ca495abdc + - /api/v2/shipments/shp_3660b5de40c842cf95732770ca03c71e pragma: - no-cache referrer-policy: @@ -352,20 +326,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afefe7872f800027a779 + - 6eaaf90167cb22e4e2aabd75000aece7 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.748315' + - '0.177039' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_generate_form.yaml b/tests/cassettes/test_shipment_generate_form.yaml index 4e4faa1c..9ede95d1 100644 --- a/tests/cassettes/test_shipment_generate_form.yaml +++ b/tests/cassettes/test_shipment_generate_form.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-17T18:58:12Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210683546", "updated_at": "2023-05-17T18:58:13Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_c5d53968f4e411edba4fac1f6bc539aa", "object": "Address", "created_at": - "2023-05-17T18:58:12+00:00", "updated_at": "2023-05-17T18:58:12+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_1ad6b1612be345b299fcee511292cb0d", - "object": "Parcel", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", + string: '{"id": "shp_0d6b20226e494736aa947169c8d24bf6", "created_at": "2025-03-07T16:46:29Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505695", "updated_at": + "2025-03-07T16:46:30Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_b7f8e61ffb7311ef9eca3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:29+00:00", "updated_at": + "2025-03-07T16:46:29+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_5d41e80a1df240b688eb8fc5696a4bf5", "object": + "Parcel", "created_at": "2025-03-07T16:46:29Z", "updated_at": "2025-03-07T16:46:29Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_86da939159154290825909b37e23e5a3", - "created_at": "2023-05-17T18:58:13Z", "updated_at": "2023-05-17T18:58:13Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-17T18:58:13Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_288b7cf0b90447bd9232d51c1bf25830", + "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:30Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230517/65f74d778056428ebd4a973194ad5130.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e85e45f2badc7c4c0db07c7e4b594f8282.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_f817f8b56c6d43759f1411a21e1f93a9", "object": - "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_dd2a6bdb194a4326bd3a7bf0095cb48a", - "object": "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_29eaa652527e4ca0b590111693d039fa", - "object": "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b6f2cbc7aec146bda313bd4725f44462", - "object": "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_b6f2cbc7aec146bda313bd4725f44462", - "object": "Rate", "created_at": "2023-05-17T18:58:13Z", "updated_at": "2023-05-17T18:58:13Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_8006ff4bd9f24efcbff082b19237ac25", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210683546", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-17T18:58:13Z", "updated_at": - "2023-05-17T18:58:13Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier": "USPS", + null}, "rates": [{"id": "rate_ca8d31d84b50481a84720db0a1f55331", "object": + "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_19dcf38e6f444db1adb6e38b93375382", + "object": "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_585cf48015a940dfb200d4c77df8cfb6", + "object": "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_19dcf38e6f444db1adb6e38b93375382", "object": + "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_53cb015bbb2a46abbc80d1918a131ee5", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505695", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:30Z", + "updated_at": "2025-03-07T16:46:30Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzgwMDZmZjRiZDlmMjRlZmNiZmYwODJiMTkyMzdhYzI1"}, - "to_address": {"id": "adr_c5d27137f4e411eda1c8ac1f6bc72124", "object": "Address", - "created_at": "2023-05-17T18:58:12+00:00", "updated_at": "2023-05-17T18:58:13+00:00", + "https://track.easypost.com/djE6dHJrXzUzY2IwMTViYmIyYTQ2YWJiYzgwZDE5MThhMTMxZWU1"}, + "to_address": {"id": "adr_b7f651a1fb7311ef804bac1f6bc53342", "object": "Address", + "created_at": "2025-03-07T16:46:29+00:00", "updated_at": "2025-03-07T16:46:30+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_c5d53968f4e411edba4fac1f6bc539aa", - "object": "Address", "created_at": "2023-05-17T18:58:12+00:00", "updated_at": - "2023-05-17T18:58:12+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_b7f8e61ffb7311ef9eca3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:29+00:00", "updated_at": + "2025-03-07T16:46:29+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_c5d27137f4e411eda1c8ac1f6bc72124", "object": "Address", "created_at": - "2023-05-17T18:58:12+00:00", "updated_at": "2023-05-17T18:58:13+00:00", "name": + "adr_b7f651a1fb7311ef804bac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:29+00:00", "updated_at": "2025-03-07T16:46:30+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"fe4ce36a88058b86f179ab08351ffa04" expires: - '0' location: - - /api/v2/shipments/shp_f708cc50d42842a0a4a8faf14bb6ece0 + - /api/v2/shipments/shp_0d6b20226e494736aa947169c8d24bf6 pragma: - no-cache referrer-policy: @@ -141,26 +133,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - a4ae9a09646523c4e2b9045e0003478a + - 6eaaf8ff67cb22e5e2aabd7c000aef52 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - intlb2wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.168833' + - '0.996671' x-version-label: - - easypost-202305171805-88442329bc-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -186,77 +179,72 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/shipments/shp_f708cc50d42842a0a4a8faf14bb6ece0/forms + uri: https://api.easypost.com/v2/shipments/shp_0d6b20226e494736aa947169c8d24bf6/forms response: body: - string: '{"created_at": "2023-05-17T18:58:12Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210683546", "updated_at": "2023-05-17T18:58:13Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_c5d53968f4e411edba4fac1f6bc539aa", "object": "Address", "created_at": - "2023-05-17T18:58:12+00:00", "updated_at": "2023-05-17T18:58:12+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_1ad6b1612be345b299fcee511292cb0d", - "object": "Parcel", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", + string: '{"id": "shp_0d6b20226e494736aa947169c8d24bf6", "created_at": "2025-03-07T16:46:29Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505695", "updated_at": + "2025-03-07T16:46:30Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_b7f8e61ffb7311ef9eca3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:29+00:00", "updated_at": + "2025-03-07T16:46:29+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_5d41e80a1df240b688eb8fc5696a4bf5", "object": + "Parcel", "created_at": "2025-03-07T16:46:29Z", "updated_at": "2025-03-07T16:46:29Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_86da939159154290825909b37e23e5a3", - "created_at": "2023-05-17T18:58:13Z", "updated_at": "2023-05-17T18:58:13Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-17T18:58:13Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_288b7cf0b90447bd9232d51c1bf25830", + "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:30Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230517/65f74d778056428ebd4a973194ad5130.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e85e45f2badc7c4c0db07c7e4b594f8282.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_f817f8b56c6d43759f1411a21e1f93a9", "object": - "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_dd2a6bdb194a4326bd3a7bf0095cb48a", - "object": "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_29eaa652527e4ca0b590111693d039fa", - "object": "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b6f2cbc7aec146bda313bd4725f44462", - "object": "Rate", "created_at": "2023-05-17T18:58:12Z", "updated_at": "2023-05-17T18:58:12Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_b6f2cbc7aec146bda313bd4725f44462", - "object": "Rate", "created_at": "2023-05-17T18:58:13Z", "updated_at": "2023-05-17T18:58:13Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_f708cc50d42842a0a4a8faf14bb6ece0", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_8006ff4bd9f24efcbff082b19237ac25", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210683546", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-17T18:58:13Z", "updated_at": - "2023-05-17T18:58:13Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-17T18:58:13Z", "shipment_id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", + null}, "rates": [{"id": "rate_ca8d31d84b50481a84720db0a1f55331", "object": + "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_19dcf38e6f444db1adb6e38b93375382", + "object": "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_585cf48015a940dfb200d4c77df8cfb6", + "object": "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_19dcf38e6f444db1adb6e38b93375382", "object": + "Rate", "created_at": "2025-03-07T16:46:30Z", "updated_at": "2025-03-07T16:46:30Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_53cb015bbb2a46abbc80d1918a131ee5", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505695", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:30Z", + "updated_at": "2025-03-07T16:46:30Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:30Z", "shipment_id": "shp_0d6b20226e494736aa947169c8d24bf6", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T18:58:13Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:30Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-18T07:35:13Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:30Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -264,9 +252,9 @@ interactions: {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrXzgwMDZmZjRiZDlmMjRlZmNiZmYwODJiMTkyMzdhYzI1"}, - "to_address": {"id": "adr_c5d27137f4e411eda1c8ac1f6bc72124", "object": "Address", - "created_at": "2023-05-17T18:58:12+00:00", "updated_at": "2023-05-17T18:58:13+00:00", + null}, "public_url": "https://track.easypost.com/djE6dHJrXzUzY2IwMTViYmIyYTQ2YWJiYzgwZDE5MThhMTMxZWU1"}, + "to_address": {"id": "adr_b7f651a1fb7311ef804bac1f6bc53342", "object": "Address", + "created_at": "2025-03-07T16:46:29+00:00", "updated_at": "2025-03-07T16:46:30+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -274,15 +262,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_c5d53968f4e411edba4fac1f6bc539aa", - "object": "Address", "created_at": "2023-05-17T18:58:12+00:00", "updated_at": - "2023-05-17T18:58:12+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_b7f8e61ffb7311ef9eca3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:29+00:00", "updated_at": + "2025-03-07T16:46:29+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_c5d27137f4e411eda1c8ac1f6bc72124", "object": "Address", "created_at": - "2023-05-17T18:58:12+00:00", "updated_at": "2023-05-17T18:58:13+00:00", "name": + "adr_b7f651a1fb7311ef804bac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:29+00:00", "updated_at": "2025-03-07T16:46:30+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -290,26 +278,24 @@ interactions: {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, "forms": [{"object": "Form", "id": - "form_c86e2b588bf04a6aa1a0d4b8db8e1a06", "created_at": "2023-05-17T18:58:14Z", - "updated_at": "2023-05-17T18:58:14Z", "mode": "test", "form_type": "return_packing_slip", - "form_url": "https://easypost-files.s3-us-west-2.amazonaws.com/files/form/20230517/a545b8ccf0db40b6a83a1f4dfab8e7ea.pdf", + "form_039d1d5a83924f6ca931c5221319a4c5", "created_at": "2025-03-07T16:46:31Z", + "updated_at": "2025-03-07T16:46:31Z", "mode": "test", "form_type": "return_packing_slip", + "form_url": "https://easypost-files.s3-us-west-2.amazonaws.com/files/form/20250307/b560bbbe1ab0484a9de736143ab49f0d.pdf", "submitted_electronically": null}], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, "refunded": false}], - "id": "shp_f708cc50d42842a0a4a8faf14bb6ece0", "object": "Shipment"}' + "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '8453' + - '7920' content-type: - application/json; charset=utf-8 - etag: - - W/"6f9b19c55e00b36937e7c94d3f99afc2" expires: - '0' location: - - /api/v2/shipments/shp_f708cc50d42842a0a4a8faf14bb6ece0/forms/return_packing_slip + - /api/v2/shipments/shp_0d6b20226e494736aa947169c8d24bf6/forms/return_packing_slip pragma: - no-cache referrer-policy: @@ -325,21 +311,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - a4ae9a09646523c5e2b9045e00034805 + - 6eaaf8ff67cb22e6e2aabd7c000af0b0 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - intlb1wdc a29e4ad05c - - extlb4wdc 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.713464' + - '0.587254' x-version-label: - - easypost-202305171805-88442329bc-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_get_lowest_smart_rate.yaml b/tests/cassettes/test_shipment_get_lowest_smart_rate.yaml index bf452e92..087f17e8 100644 --- a/tests/cassettes/test_shipment_get_lowest_smart_rate.yaml +++ b/tests/cassettes/test_shipment_get_lowest_smart_rate.yaml @@ -6,7 +6,7 @@ interactions: "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": false}' + 15.4}}}' headers: Accept: - '*/*' @@ -15,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '520' + - '496' Content-Type: - application/json authorization: @@ -26,95 +26,73 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:47Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:47Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_26e240cef40711edbb71ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:47+00:00", "updated_at": "2023-05-16T16:31:47+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_59e1ea2ee4ef420bb4560e4df6fc1057", "created_at": "2025-03-07T16:46:29Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:46:29Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_b7aacbcffb7311ef8022ac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:29+00:00", "updated_at": "2025-03-07T16:46:29+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_046b0db84b7e46f79424f9e039c006ac", - "object": "Parcel", "created_at": "2023-05-16T16:31:47Z", "updated_at": "2023-05-16T16:31:47Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_b81bb32a9edd4eceacf041baa39cbe6c", + "object": "Parcel", "created_at": "2025-03-07T16:46:29Z", "updated_at": "2025-03-07T16:46:29Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_8004e2297e5042d381e65b6aa0c1b47c", - "object": "Rate", "created_at": "2023-05-16T16:31:47Z", "updated_at": "2023-05-16T16:31:47Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_845b711111cc4673afab6135e97cadd2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_1511417153ae4d27a9ed757fb79179b8", - "object": "Rate", "created_at": "2023-05-16T16:31:47Z", "updated_at": "2023-05-16T16:31:47Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_845b711111cc4673afab6135e97cadd2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ee93dc67a641465983a29c522983fafc", - "object": "Rate", "created_at": "2023-05-16T16:31:47Z", "updated_at": "2023-05-16T16:31:47Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_0cbe7fbf881b4614852dd2976333d88a", + "object": "Rate", "created_at": "2025-03-07T16:46:29Z", "updated_at": "2025-03-07T16:46:29Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_845b711111cc4673afab6135e97cadd2", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_1ccee45d09314605aab8ac89dfdf5c79", - "object": "Rate", "created_at": "2023-05-16T16:31:47Z", "updated_at": "2023-05-16T16:31:47Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_845b711111cc4673afab6135e97cadd2", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_26df76e9f40711ed93f1ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:31:47+00:00", "updated_at": "2023-05-16T16:31:47+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_26e240cef40711edbb71ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T16:31:47+00:00", "updated_at": - "2023-05-16T16:31:47+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_59e1ea2ee4ef420bb4560e4df6fc1057", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d11be14d3ff24a0b8140005f97a0702f", + "object": "Rate", "created_at": "2025-03-07T16:46:29Z", "updated_at": "2025-03-07T16:46:29Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_59e1ea2ee4ef420bb4560e4df6fc1057", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5d8ad0d375de4b06a14ed74e9d8c3fd6", + "object": "Rate", "created_at": "2025-03-07T16:46:29Z", "updated_at": "2025-03-07T16:46:29Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_59e1ea2ee4ef420bb4560e4df6fc1057", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b7a76fdafb7311ef9fe5ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:29+00:00", "updated_at": + "2025-03-07T16:46:29+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_26df76e9f40711ed93f1ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:47+00:00", "updated_at": "2023-05-16T16:31:47+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b7aacbcffb7311ef8022ac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:29+00:00", "updated_at": "2025-03-07T16:46:29+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b7a76fdafb7311ef9fe5ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:29+00:00", "updated_at": "2025-03-07T16:46:29+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_845b711111cc4673afab6135e97cadd2", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '5851' + - '4325' content-type: - application/json; charset=utf-8 - etag: - - W/"9051776e8f5458eac23d5934ea0ae87d" expires: - '0' location: - - /api/v2/shipments/shp_845b711111cc4673afab6135e97cadd2 + - /api/v2/shipments/shp_59e1ea2ee4ef420bb4560e4df6fc1057 pragma: - no-cache referrer-policy: @@ -125,27 +103,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e76463aff3e7872f9b0027a8f6 + - 6eaaf8ff67cb22e5e2aabd7a000aee8a x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.840981' + - '0.226865' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -165,53 +141,42 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_845b711111cc4673afab6135e97cadd2/smartrate + uri: https://api.easypost.com/v2/shipments/shp_59e1ea2ee4ef420bb4560e4df6fc1057/smartrate response: body: string: '{"result": [{"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:47Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": null, "est_delivery_days": - null, "id": "rate_8004e2297e5042d381e65b6aa0c1b47c", "list_currency": "USD", - "list_rate": 31.25, "mode": "test", "object": "Rate", "rate": 31.25, "retail_currency": - "USD", "retail_rate": 35.8, "service": "Express", "shipment_id": "shp_845b711111cc4673afab6135e97cadd2", - "time_in_transit": {"percentile_50": 1, "percentile_75": 2, "percentile_85": - 2, "percentile_90": 2, "percentile_95": 3, "percentile_97": 3, "percentile_99": - 4}, "updated_at": "2023-05-16T16:31:47Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:47Z", - "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 5, "est_delivery_days": 5, "id": "rate_1511417153ae4d27a9ed757fb79179b8", - "list_currency": "USD", "list_rate": 7.75, "mode": "test", "object": "Rate", - "rate": 6.76, "retail_currency": "USD", "retail_rate": 7.75, "service": "ParcelSelect", - "shipment_id": "shp_845b711111cc4673afab6135e97cadd2", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 2, "percentile_97": 2, "percentile_99": 3}, "updated_at": - "2023-05-16T16:31:47Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:47Z", "currency": "USD", "delivery_date": + "created_at": "2025-03-07T16:46:29Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": - 2, "id": "rate_ee93dc67a641465983a29c522983fafc", "list_currency": "USD", - "list_rate": 8.24, "mode": "test", "object": "Rate", "rate": 7.15, "retail_currency": - "USD", "retail_rate": 10.2, "service": "Priority", "shipment_id": "shp_845b711111cc4673afab6135e97cadd2", + 2, "id": "rate_0cbe7fbf881b4614852dd2976333d88a", "list_currency": "USD", + "list_rate": 8.34, "mode": "test", "object": "Rate", "rate": 7.42, "retail_currency": + "USD", "retail_rate": 9.9, "service": "Priority", "shipment_id": "shp_59e1ea2ee4ef420bb4560e4df6fc1057", "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": - 2, "percentile_90": 2, "percentile_95": 2, "percentile_97": 3, "percentile_99": - 3}, "updated_at": "2023-05-16T16:31:47Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:47Z", + 2, "percentile_90": 3, "percentile_95": 3, "percentile_97": 3, "percentile_99": + 4}, "updated_at": "2025-03-07T16:46:29Z"}, {"carrier": "USPS", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2025-03-07T16:46:29Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 3, "est_delivery_days": 3, "id": "rate_1ccee45d09314605aab8ac89dfdf5c79", - "list_currency": "USD", "list_rate": 6.07, "mode": "test", "object": "Rate", - "rate": 6.07, "retail_currency": "USD", "retail_rate": 6.07, "service": "First", - "shipment_id": "shp_845b711111cc4673afab6135e97cadd2", "time_in_transit": + "delivery_days": 3, "est_delivery_days": 3, "id": "rate_d11be14d3ff24a0b8140005f97a0702f", + "list_currency": "USD", "list_rate": 6.57, "mode": "test", "object": "Rate", + "rate": 6.07, "retail_currency": "USD", "retail_rate": 8.85, "service": "GroundAdvantage", + "shipment_id": "shp_59e1ea2ee4ef420bb4560e4df6fc1057", "time_in_transit": {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 3, "percentile_97": 4, "percentile_99": 5}, "updated_at": - "2023-05-16T16:31:47Z"}]}' + 2, "percentile_95": 3, "percentile_97": 3, "percentile_99": 4}, "updated_at": + "2025-03-07T16:46:29Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "created_at": "2025-03-07T16:46:29Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 1, "est_delivery_days": + 1, "id": "rate_5d8ad0d375de4b06a14ed74e9d8c3fd6", "list_currency": "USD", + "list_rate": 34.15, "mode": "test", "object": "Rate", "rate": 34.15, "retail_currency": + "USD", "retail_rate": 39.1, "service": "Express", "shipment_id": "shp_59e1ea2ee4ef420bb4560e4df6fc1057", + "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": + 3, "percentile_90": 3, "percentile_95": 4, "percentile_97": 5, "percentile_99": + 8}, "updated_at": "2025-03-07T16:46:29Z"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '2620' + - '1969' content-type: - application/json; charset=utf-8 - etag: - - W/"b394562e6e733327d27be371cb69d772" expires: - '0' pragma: @@ -229,20 +194,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e76463aff4e7872f9b0027a93b + - 6eaaf8ff67cb22e5e2aabd7a000aeeef x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.196552' + - '0.113517' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_get_next_page.yaml b/tests/cassettes/test_shipment_get_next_page.yaml index fd8badeb..842b97a7 100644 --- a/tests/cassettes/test_shipment_get_next_page.yaml +++ b/tests/cassettes/test_shipment_get_next_page.yaml @@ -16,406 +16,277 @@ interactions: uri: https://api.easypost.com/v2/shipments?page_size=5 response: body: - string: '{"shipments": [{"created_at": "2023-05-16T16:22:22Z", "is_return": - false, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "delivered", "tracking_code": "9400100104262210337456", - "updated_at": "2023-05-16T16:26:43Z", "batch_id": null, "batch_status": null, - "batch_message": null, "customs_info": {"id": "cstinfo_582daaed61af4385af1ab69afbe4bf31", - "object": "CustomsInfo", "created_at": "2023-05-16T16:22:22Z", "updated_at": - "2023-05-16T16:22:22Z", "contents_explanation": "", "contents_type": "merchandise", - "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI - 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, - "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": - [{"id": "cstitem_6533bee6732d4f66a02caa1e542d47f5", "object": "CustomsItem", - "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": - "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": - "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": - null}]}, "from_address": {"id": "adr_d62fb718f40511edb00fac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:22+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + string: '{"shipments": [{"id": "shp_6348a453cbd04b4189dc85524719e6b2", "created_at": + "2025-03-07T16:46:14Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "unknown", "tracking_code": "9400100208303109505640", + "updated_at": "2025-03-07T16:46:15Z", "batch_id": "batch_0fc0517f6fb1426197560732520f8edd", + "batch_status": "postage_purchased", "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_af10e4b4fb7311ef9acaac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:14+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_29edd0beab3f49e8ab6d4414e6f99d08", - "object": "Parcel", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_a9373fdd04bd4d83874c7e397ecddcb6", + "object": "Parcel", "created_at": "2025-03-07T16:46:14Z", "updated_at": "2025-03-07T16:46:14Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_e606290bed134b98895b549d34a38416", - "created_at": "2023-05-16T16:22:23Z", "updated_at": "2023-05-16T16:22:25Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:22:23Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f54afe8913fb4046b55523838df4f97b", + "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:15Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/a9d19fca8ee5479591a317db0a9fba3d.png", - "label_pdf_url": null, "label_zpl_url": "https://easypost-files.s3-us-west-2.amazonaws.com/files/postage_label/20230516/397e83243d82404f98cd64718d68b8cf.zpl", - "label_epl2_url": null, "label_file": null}, "rates": [{"id": "rate_a4152cbf9403418d808e0ba0c7e05370", - "object": "Rate", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6320d535e8514d00826c079ae685e70d", - "object": "Rate", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_49c195d15ca84b5ea9fb470985118855", - "object": "Rate", "created_at": "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_221474bca29a41ae9f57e21ce626c3ee", "object": "Rate", "created_at": - "2023-05-16T16:22:22Z", "updated_at": "2023-05-16T16:22:22Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_49c195d15ca84b5ea9fb470985118855", - "object": "Rate", "created_at": "2023-05-16T16:22:23Z", "updated_at": "2023-05-16T16:22:23Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_44dcc5ae48194b65aaaf88aa31e930f4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_1c2c2fcd8ebd43c2abb6e526a2b39760", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337456", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:22:23Z", - "updated_at": "2023-05-16T16:25:24Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:25:24Z", "shipment_id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8b170594430f64d768ceb157887c5c28e.png", + "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": + null}, "rates": [{"id": "rate_f9da1c97861743bba5eaf3db89b10898", "object": + "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_f320606ea0bd45ef92a34f109234fc44", + "object": "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b501d85dcc0743fdb0d8ab673107bf5d", + "object": "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_b501d85dcc0743fdb0d8ab673107bf5d", "object": + "Rate", "created_at": "2025-03-07T16:46:15Z", "updated_at": "2025-03-07T16:46:15Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_4c1b66c0dad34060a7b4704100bdd88e", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505640", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:15Z", + "updated_at": "2025-03-07T16:46:15Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:15Z", "shipment_id": "shp_6348a453cbd04b4189dc85524719e6b2", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:25:24Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:15Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:02:24Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:07:24Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:43:24Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:34:24Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:14:24Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:24:24Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:16:24Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:15Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:16:24Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzFjMmMyZmNkOGViZDQzYzJhYmI2ZTUyNmEyYjM5NzYw"}, - "to_address": {"id": "adr_d62da3cff40511ed80c03cecef1b359e", "object": "Address", - "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:23+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_d62fb718f40511edb00fac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:22+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_d62da3cff40511ed80c03cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:22:22+00:00", "updated_at": "2023-05-16T16:22:23+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_44dcc5ae48194b65aaaf88aa31e930f4", - "object": "Shipment"}, {"created_at": "2023-05-16T16:21:05Z", "is_return": - false, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210337050", "updated_at": "2023-05-16T16:25:45Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a873eee6f40511ed9213ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:05+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzRjMWI2NmMwZGFkMzQwNjBhN2I0NzA0MTAwYmRkODhl"}, + "to_address": {"id": "adr_af0b9199fb7311ef9ac8ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:15+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "usps_zone": 4, "return_address": {"id": "adr_af10e4b4fb7311ef9acaac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:14+00:00", "updated_at": + "2025-03-07T16:46:14+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": + "adr_af0b9199fb7311ef9ac8ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:14+00:00", "updated_at": "2025-03-07T16:46:15+00:00", "name": + "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": + null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_3fbe7beb867a4b4889872877a790d9c7", - "object": "Parcel", "created_at": "2023-05-16T16:21:05Z", "updated_at": "2023-05-16T16:21:05Z", + null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": + true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, + "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", + "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, + {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, + "refunded": false}], "object": "Shipment"}, {"id": "shp_b674aad341c24fe18611019a72ff6e84", + "created_at": "2025-03-07T16:46:11Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505633", "updated_at": "2025-03-07T16:46:11Z", "batch_id": + "batch_6b38965e1d0a44578a404fede07d9825", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_acc761b6fb7311ef98773cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:11+00:00", "updated_at": + "2025-03-07T16:46:11+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_48819d3d4ffc44b898146405288b1b4e", "object": + "Parcel", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_a97b131316284b03a144dc2bcf3a6f90", - "created_at": "2023-05-16T16:21:07Z", "updated_at": "2023-05-16T16:21:07Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:07Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_7c4b7267da3f4b13a8834e79a7b0af3a", + "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:11Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/1b13765f6faf4183a9f65ee56be5309f.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8728792ec6b434a14a1f45d8e27c3db93.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_671eafd934504d4f98a24c74399c4dee", "object": - "Rate", "created_at": "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_56f6cc7dd57348958884d0c2c418e76f", - "object": "Rate", "created_at": "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_81ed2dfd0b384e9fb71a6f9040ad535a", "object": "Rate", "created_at": - "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_55628363de664009aec93b85250179b7", "object": "Rate", "created_at": - "2023-05-16T16:21:06Z", "updated_at": "2023-05-16T16:21:06Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_56f6cc7dd57348958884d0c2c418e76f", - "object": "Rate", "created_at": "2023-05-16T16:21:07Z", "updated_at": "2023-05-16T16:21:07Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_36d0b9cd93734d3fbcdeab3f3b14739e", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_04e23cace8034b7695f49811da9a37cc", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337050", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:07Z", - "updated_at": "2023-05-16T16:24:07Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:07Z", "shipment_id": "shp_36d0b9cd93734d3fbcdeab3f3b14739e", + null}, "rates": [{"id": "rate_f74107b724334c1695f76a362d6d1354", "object": + "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c50e7434c2b8494cbc89405e54ee777e", + "object": "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_345992a3bb14453ca8c41069addcbbad", + "object": "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_345992a3bb14453ca8c41069addcbbad", "object": + "Rate", "created_at": "2025-03-07T16:46:11Z", "updated_at": "2025-03-07T16:46:11Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_7ab5213aaf264b53ab2f296d2efc7e73", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505633", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:12Z", + "updated_at": "2025-03-07T16:46:12Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:12Z", "shipment_id": "shp_b674aad341c24fe18611019a72ff6e84", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:07Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:12Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:07Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:07Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:07Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:07Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:07Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:07Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:07Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:12Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:07Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzA0ZTIzY2FjZTgwMzRiNzY5NWY0OTgxMWRhOWEzN2Nj"}, - "to_address": {"id": "adr_a87158f6f40511ed9151ac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:06+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_a873eee6f40511ed9213ac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:05+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_a87158f6f40511ed9151ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:21:05+00:00", "updated_at": "2023-05-16T16:21:06+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzdhYjUyMTNhYWYyNjRiNTNhYjJmMjk2ZDJlZmM3ZTcz"}, + "to_address": {"id": "adr_acc16571fb7311ef9f45ac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:46:10+00:00", "updated_at": "2025-03-07T16:46:11+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "usps_zone": 4, "return_address": {"id": "adr_acc761b6fb7311ef98773cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:11+00:00", "updated_at": + "2025-03-07T16:46:11+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": + "adr_acc16571fb7311ef9f45ac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:10+00:00", "updated_at": "2025-03-07T16:46:11+00:00", "name": + "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": + null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_36d0b9cd93734d3fbcdeab3f3b14739e", - "object": "Shipment"}, {"created_at": "2023-05-16T16:21:03Z", "is_return": - false, "messages": [], "mode": "test", "options": {"currency": "USD", "payment": - {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", - "tracking_code": "9400100104262210337043", "updated_at": "2023-05-16T16:25:44Z", - "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": - null, "from_address": {"id": "adr_a729f763f40511ed8c1aac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:21:03+00:00", "updated_at": "2023-05-16T16:21:03+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_7046a1815ffc47d7b9d86055a62c4f37", - "object": "Parcel", "created_at": "2023-05-16T16:21:03Z", "updated_at": "2023-05-16T16:21:03Z", + null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": + true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, + "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", + "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, + {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, + "refunded": false}], "object": "Shipment"}, {"id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", + "created_at": "2025-03-07T16:46:07Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505626", "updated_at": "2025-03-07T16:46:07Z", "batch_id": + "batch_1da4ef8e3efa4581b366b81ccf81b4f2", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_aa69c593fb7311ef971b3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:07+00:00", "updated_at": + "2025-03-07T16:46:07+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_d65c73ef0b0741b683c85ae149b4c615", "object": + "Parcel", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_9ceb180e70d54d7aa9b2776826753975", - "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:04Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f91a9e01da6c4e378d2dce661c4c6911", + "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:07Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/92a7fa8af51548b5aed37a91569301e7.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8534b38912c20459a8afb5b43a2a38f93.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_814adb421bca4e6faebf760e90c224c3", "object": - "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5baf23f138e84074bd2c005e3b91a58d", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_24bd73a25bae4892af25a5f8513e6ab0", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_1b7f764cffa6475c860423b54bc975da", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_d8db44bccbcd497bb1262510cc379364", - "object": "Rate", "created_at": "2023-05-16T16:21:04Z", "updated_at": "2023-05-16T16:21:04Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2c633f7b7b42407e950ef0941c189e68", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_8444901e342242c5809763e4130d1cd9", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337043", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:04Z", - "updated_at": "2023-05-16T16:24:04Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:04Z", "shipment_id": "shp_2c633f7b7b42407e950ef0941c189e68", + null}, "rates": [{"id": "rate_59faed8017f04a3a929537ddda74d7fb", "object": + "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_feb24755f1794a458896fecb8a014f3e", + "object": "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9f7170c31a6a4cd4b07a7ee5c114aadc", + "object": "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_9f7170c31a6a4cd4b07a7ee5c114aadc", "object": + "Rate", "created_at": "2025-03-07T16:46:07Z", "updated_at": "2025-03-07T16:46:07Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_5b5388ca5edc4c2188e41862ace7cbee", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505626", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:07Z", + "updated_at": "2025-03-07T16:46:07Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:07Z", "shipment_id": "shp_2d1487afd0f541a4bcf9fecc1b02b28d", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:04Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:07Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:04Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:04Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:04Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:04Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:04Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:04Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:04Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:07Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:04Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzg0NDQ5MDFlMzQyMjQyYzU4MDk3NjNlNDEzMGQxY2Q5"}, - "to_address": {"id": "adr_a7273923f40511ed8c0fac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:21:03+00:00", "updated_at": "2023-05-16T16:21:03+00:00", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzViNTM4OGNhNWVkYzRjMjE4OGU0MTg2MmFjZTdjYmVl"}, + "to_address": {"id": "adr_aa670212fb7311ef9ddfac1f6bc539aa", "object": "Address", + "created_at": "2025-03-07T16:46:07+00:00", "updated_at": "2025-03-07T16:46:07+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -423,15 +294,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_a729f763f40511ed8c1aac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T16:21:03+00:00", "updated_at": - "2023-05-16T16:21:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_aa69c593fb7311ef971b3cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:46:07+00:00", "updated_at": + "2025-03-07T16:46:07+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_a7273923f40511ed8c0fac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:21:03+00:00", "updated_at": "2023-05-16T16:21:03+00:00", "name": + "adr_aa670212fb7311ef9ddfac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:07+00:00", "updated_at": "2025-03-07T16:46:07+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -441,112 +312,80 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_2c633f7b7b42407e950ef0941c189e68", "object": - "Shipment"}, {"created_at": "2023-05-16T16:21:01Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210337036", "updated_at": "2023-05-16T16:25:46Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a63b8900f40511ed929fac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T16:21:01+00:00", "updated_at": "2023-05-16T16:21:01+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_8ac4fabb4a8d40c7986154d37aa33350", - "object": "Parcel", "created_at": "2023-05-16T16:21:01Z", "updated_at": "2023-05-16T16:21:01Z", + "refunded": false}], "object": "Shipment"}, {"id": "shp_622803c6479446e895b6ec9ffc580f58", + "created_at": "2025-03-07T16:46:03Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505619", "updated_at": "2025-03-07T16:46:04Z", "batch_id": + "batch_b5e1cf8eeb0e45adb7feb089b3d12a46", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_a84fa087fb7311ef9cb3ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:03+00:00", "updated_at": + "2025-03-07T16:46:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_5c264ed4432848aaad2545e0dfb8eeb4", "object": + "Parcel", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_f813dd28e3f94059aa447739dab01641", - "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:02Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_2dd5e193a0874563acda1913359fbef3", + "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:04Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/fbb018d920c9467b8efafbea99b7c189.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e82ca3296f28234c8c963d9042eefecad2.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_24d6dd80f86b407e9d3db6c8fe8bf06f", "object": - "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_3799f23dff1c46c7b8e106c6d94d4640", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_62a7d8f9d7df4660b07fc1ec5e4bf63d", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c0107337ff73445889af69527f669b05", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_c0107337ff73445889af69527f669b05", - "object": "Rate", "created_at": "2023-05-16T16:21:02Z", "updated_at": "2023-05-16T16:21:02Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ef08e475e134404e8870828a410b8325", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_069b6b07e43144a0aca47b6590e52652", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337036", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:03Z", - "updated_at": "2023-05-16T16:24:03Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:03Z", "shipment_id": "shp_ef08e475e134404e8870828a410b8325", + null}, "rates": [{"id": "rate_5ad2d3f3665b4343b75e85a5a0fe02de", "object": + "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_646a6333c5af49168d64b3df5382e557", + "object": "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5179687711ef43e2a5188ee7aa89da97", + "object": "Rate", "created_at": "2025-03-07T16:46:03Z", "updated_at": "2025-03-07T16:46:03Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_646a6333c5af49168d64b3df5382e557", "object": + "Rate", "created_at": "2025-03-07T16:46:04Z", "updated_at": "2025-03-07T16:46:04Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_11c660ecffdf4b938a1212ec4709662c", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505619", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:04Z", + "updated_at": "2025-03-07T16:46:04Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:04Z", "shipment_id": "shp_622803c6479446e895b6ec9ffc580f58", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:04Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:03Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:03Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:03Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:03Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:03Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:03Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:04Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:03Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzA2OWI2YjA3ZTQzMTQ0YTBhY2E0N2I2NTkwZTUyNjUy"}, - "to_address": {"id": "adr_a638b4ebf40511ed87ecac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:21:01+00:00", "updated_at": "2023-05-16T16:21:02+00:00", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzExYzY2MGVjZmZkZjRiOTM4YTEyMTJlYzQ3MDk2NjJj"}, + "to_address": {"id": "adr_a84d64eafb7311ef95cf3cecef1b359e", "object": "Address", + "created_at": "2025-03-07T16:46:03+00:00", "updated_at": "2025-03-07T16:46:03+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -554,15 +393,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_a63b8900f40511ed929fac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T16:21:01+00:00", "updated_at": - "2023-05-16T16:21:01+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_a84fa087fb7311ef9cb3ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:03+00:00", "updated_at": + "2025-03-07T16:46:03+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_a638b4ebf40511ed87ecac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:21:01+00:00", "updated_at": "2023-05-16T16:21:02+00:00", "name": + "adr_a84d64eafb7311ef95cf3cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:46:03+00:00", "updated_at": "2025-03-07T16:46:03+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -572,162 +411,113 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}, {"object": "Fee", "type": "CarbonOffsetFee", "amount": - "0.11000", "charged": true, "refunded": false}], "id": "shp_ef08e475e134404e8870828a410b8325", - "object": "Shipment"}, {"created_at": "2023-05-16T16:20:59Z", "is_return": - false, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210337029", "updated_at": "2023-05-16T16:25:09Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_a4879739f40511ed96723cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:20:59+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_6922e9cbc89b4f9fb8a7b3e080ecebc9", - "object": "Parcel", "created_at": "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", + "refunded": false}], "object": "Shipment"}, {"id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", + "created_at": "2025-03-07T16:45:59Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": + "9400100208303109505602", "updated_at": "2025-03-07T16:46:00Z", "batch_id": + "batch_63f493b2b5484ad8a220c9567867732c", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_a6167a17fb7311ef94473cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:45:59+00:00", "updated_at": + "2025-03-07T16:45:59+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_c2911b5c7bda49a9803dfba239fad665", "object": + "Parcel", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_6a53f92ccdfe4fe0848339a84afda561", - "created_at": "2023-05-16T16:21:00Z", "updated_at": "2023-05-16T16:21:01Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:21:00Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d08201d458744a4ebf36695bb79f7dee", + "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:00Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/a7c244af57b04f5f8fd597e7adc81378.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8d6cfe7a133ab49f19fdbb00699c16dd0.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_c2df9308a3a14666ae9fac7e9d19a117", "object": - "Rate", "created_at": "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6a649176a57b41a290d5df207bacf437", - "object": "Rate", "created_at": "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_bce0261c9b8e438aa2dc870e2a75240e", "object": "Rate", "created_at": - "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_00efbcd87088402ba1d57dca1914a51f", "object": "Rate", "created_at": - "2023-05-16T16:20:59Z", "updated_at": "2023-05-16T16:20:59Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_6a649176a57b41a290d5df207bacf437", - "object": "Rate", "created_at": "2023-05-16T16:21:00Z", "updated_at": "2023-05-16T16:21:00Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_5efc9f87bef5468691e1aa0e0cb7c085", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_a3a240fb1a054cda94ceddd844b2d980", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210337029", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:21:01Z", - "updated_at": "2023-05-16T16:24:01Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:24:01Z", "shipment_id": "shp_5efc9f87bef5468691e1aa0e0cb7c085", + null}, "rates": [{"id": "rate_e62e203a40874c9f9733fbd55e5fe9a8", "object": + "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_aee96176a0764400a3bc4a6a200b4d17", + "object": "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ac50b2827b524b9f9ab7a19507dfb541", + "object": "Rate", "created_at": "2025-03-07T16:45:59Z", "updated_at": "2025-03-07T16:45:59Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_aee96176a0764400a3bc4a6a200b4d17", "object": + "Rate", "created_at": "2025-03-07T16:46:00Z", "updated_at": "2025-03-07T16:46:00Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_49bbcbf123ae4414984b6ee5182fc53b", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505602", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:00Z", + "updated_at": "2025-03-07T16:46:00Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:00Z", "shipment_id": "shp_6b4d00550e884c07985eaeccfbdf4fc1", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:24:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:00Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:01:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:06:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:42:01Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:33:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:13:01Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:23:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:15:01Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:00Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:15:01Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2EzYTI0MGZiMWEwNTRjZGE5NGNlZGRkODQ0YjJkOTgw"}, - "to_address": {"id": "adr_a4815838f40511ed90e6ac1f6bc72124", "object": "Address", - "created_at": "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:21:00+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_a4879739f40511ed96723cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:20:59+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_a4815838f40511ed90e6ac1f6bc72124", "object": - "Address", "created_at": "2023-05-16T16:20:59+00:00", "updated_at": "2023-05-16T16:21:00+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzQ5YmJjYmYxMjNhZTQ0MTQ5ODRiNmVlNTE4MmZjNTNi"}, + "to_address": {"id": "adr_a613c9f6fb7311ef9555ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:45:59+00:00", "updated_at": "2025-03-07T16:46:00+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "usps_zone": 4, "return_address": {"id": "adr_a6167a17fb7311ef94473cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:45:59+00:00", "updated_at": + "2025-03-07T16:45:59+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": + "adr_a613c9f6fb7311ef9555ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:45:59+00:00", "updated_at": "2025-03-07T16:46:00+00:00", "name": + "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": + null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}, {"object": "Fee", "type": - "CarbonOffsetFee", "amount": "0.11000", "charged": true, "refunded": false}], - "id": "shp_5efc9f87bef5468691e1aa0e0cb7c085", "object": "Shipment"}], "has_more": - true}' + null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": + true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, + "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", + "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, + {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, + "refunded": false}], "object": "Shipment"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '55045' + - '38221' content-type: - application/json; charset=utf-8 - etag: - - W/"cd9715f54594174309f7466458f77bcc" expires: - '0' pragma: @@ -740,25 +530,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afe1e7872f5a0027a29c + - 6eaaf8fe67cb22dae2aaba21000ade37 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.400052' + - '0.483069' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -778,103 +570,98 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments?before_id=shp_5efc9f87bef5468691e1aa0e0cb7c085&page_size=5 + uri: https://api.easypost.com/v2/shipments?before_id=shp_6b4d00550e884c07985eaeccfbdf4fc1&page_size=5 response: body: - string: '{"shipments": [{"created_at": "2023-05-16T16:20:45Z", "is_return": - false, "messages": [], "mode": "test", "options": {"currency": "USD", "payment": - {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", - "tracking_code": "9400100104262210336961", "updated_at": "2023-05-16T16:24:57Z", - "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": - null, "from_address": {"id": "adr_9c335c96f40511edafadac1f6bc7b362", "object": - "Address", "created_at": "2023-05-16T16:20:45+00:00", "updated_at": "2023-05-16T16:20:45+00:00", + string: '{"shipments": [{"id": "shp_34cd3af0099a4d5c815a44c1a408f095", "created_at": + "2025-03-06T19:48:45Z", "is_return": false, "messages": [], "mode": "test", + "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": + 0}, "reference": null, "status": "delivered", "tracking_code": "9400100208303109500782", + "updated_at": "2025-03-06T19:53:41Z", "batch_id": "batch_05022d9288d947048a4f6196e6f2bf1e", + "batch_status": "postage_purchased", "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_03ff3e3cfac411ef9d26ac1f6bc53342", "object": + "Address", "created_at": "2025-03-06T19:48:45+00:00", "updated_at": "2025-03-06T19:48:45+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_5e3bce5393b34a17a8c3941f1c0765c2", - "object": "Parcel", "created_at": "2023-05-16T16:20:45Z", "updated_at": "2023-05-16T16:20:45Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_c8c3b87b87ab45d291c13b4d1190b878", + "object": "Parcel", "created_at": "2025-03-06T19:48:45Z", "updated_at": "2025-03-06T19:48:45Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_734eb70b933645bd9fea8739eb4b4abe", - "created_at": "2023-05-16T16:20:45Z", "updated_at": "2023-05-16T16:20:45Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:20:45Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_00e636dd638e43b9adcaf21eea2733d7", + "created_at": "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:48:46Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:46Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/bb05c27accd64e21a96860bbfccb9e06.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e86fb2d87f26054a05b9619ca334b254e3.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_d5ff5c1c347a457b9d1f51c3f302b7d7", "object": - "Rate", "created_at": "2023-05-16T16:20:45Z", "updated_at": "2023-05-16T16:20:45Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_9e837e46d8b348a6a71fbefe570a63e8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_077b3e785a5746e1b0a98d211db06a69", - "object": "Rate", "created_at": "2023-05-16T16:20:45Z", "updated_at": "2023-05-16T16:20:45Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9e837e46d8b348a6a71fbefe570a63e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_95717bfc3fff4f3ebbbdbb5f0fc2e129", "object": "Rate", "created_at": - "2023-05-16T16:20:45Z", "updated_at": "2023-05-16T16:20:45Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_9e837e46d8b348a6a71fbefe570a63e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_f705edf220ca4187b9eee86d39fb89ba", "object": "Rate", "created_at": - "2023-05-16T16:20:45Z", "updated_at": "2023-05-16T16:20:45Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_9e837e46d8b348a6a71fbefe570a63e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": "submitted", "scan_form": null, "selected_rate": {"id": "rate_077b3e785a5746e1b0a98d211db06a69", - "object": "Rate", "created_at": "2023-05-16T16:20:45Z", "updated_at": "2023-05-16T16:20:45Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_9e837e46d8b348a6a71fbefe570a63e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_a590016af3604de787fc6383a06ea0a4", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210336961", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:20:46Z", - "updated_at": "2023-05-16T16:23:46Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:23:46Z", "shipment_id": "shp_9e837e46d8b348a6a71fbefe570a63e8", - "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:23:46Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:00:46Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:05:46Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:41:46Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:32:46Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:12:46Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:22:46Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + null}, "rates": [{"id": "rate_f773f65591cb4b8685bbdb9ead3f1e11", "object": + "Rate", "created_at": "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:48:46Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_34cd3af0099a4d5c815a44c1a408f095", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_0ec0a4a125bf40038da800ce1f12f523", + "object": "Rate", "created_at": "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:48:46Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_34cd3af0099a4d5c815a44c1a408f095", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_bf4b36b236824cbf9446371c4d027c65", + "object": "Rate", "created_at": "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:48:46Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_34cd3af0099a4d5c815a44c1a408f095", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_f773f65591cb4b8685bbdb9ead3f1e11", "object": + "Rate", "created_at": "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:48:46Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_34cd3af0099a4d5c815a44c1a408f095", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_977a3085fc654ae3955af46ac298e43c", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500782", + "status": "delivered", "status_detail": "arrived_at_destination", "created_at": + "2025-03-06T19:48:46Z", "updated_at": "2025-03-06T19:51:47Z", "signed_by": + "John Tester", "weight": null, "est_delivery_date": "2025-03-06T19:51:47Z", + "shipment_id": "shp_34cd3af0099a4d5c815a44c1a408f095", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:51:47Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:28:47Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}, {"object": "TrackingDetail", + "message": "Arrived at USPS Origin Facility", "description": "", "status": + "in_transit", "status_detail": "arrived_at_facility", "datetime": "2025-02-07T18:33:47Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "NORTH HOUSTON", "state": "TX", "country": null, "zip": "77315"}}, + {"object": "TrackingDetail", "message": "Arrived at USPS Facility", "description": + "", "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": + "2025-02-08T20:09:47Z", "source": "USPS", "carrier_code": "", "tracking_location": + {"object": "TrackingLocation", "city": "COLUMBIA", "state": "SC", "country": + null, "zip": "29201"}}, {"object": "TrackingDetail", "message": "Arrived at + Post Office", "description": "", "status": "in_transit", "status_detail": + "arrived_at_facility", "datetime": "2025-02-08T23:00:47Z", "source": "USPS", + "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": + "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Sorting Complete", "description": "", "status": + "in_transit", "status_detail": "status_update", "datetime": "2025-02-09T04:40:47Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Out for Delivery", "description": "", "status": + "out_for_delivery", "status_detail": "out_for_delivery", "datetime": "2025-02-09T04:50:47Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:14:46Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "TrackingDetail", "message": "Delivered", "description": "", "status": "delivered", + "status_detail": "arrived_at_destination", "datetime": "2025-02-09T09:42:47Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -883,9 +670,9 @@ interactions: null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:14:46Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2E1OTAwMTZhZjM2MDRkZTc4N2ZjNjM4M2EwNmVhMGE0"}, - "to_address": {"id": "adr_9c31588bf40511ed8d9cac1f6bc72124", "object": "Address", - "created_at": "2023-05-16T16:20:45+00:00", "updated_at": "2023-05-16T16:20:45+00:00", + null, "initial_delivery_attempt": "2025-02-09T09:42:47Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzk3N2EzMDg1ZmM2NTRhZTM5NTVhZjQ2YWMyOThlNDNj"}, + "to_address": {"id": "adr_03fba80cfac411efb8b23cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:45+00:00", "updated_at": "2025-03-06T19:48:46+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -893,15 +680,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_9c335c96f40511edafadac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T16:20:45+00:00", "updated_at": - "2023-05-16T16:20:45+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_03ff3e3cfac411ef9d26ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:45+00:00", "updated_at": + "2025-03-06T19:48:45+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_9c31588bf40511ed8d9cac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T16:20:45+00:00", "updated_at": "2023-05-16T16:20:45+00:00", "name": + "adr_03fba80cfac411efb8b23cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:45+00:00", "updated_at": "2025-03-06T19:48:46+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -911,101 +698,95 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_9e837e46d8b348a6a71fbefe570a63e8", "object": - "Shipment"}, {"created_at": "2023-05-16T16:20:43Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "refunded": false}], "object": "Shipment"}, {"id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", + "created_at": "2025-03-06T19:48:42Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210336947", "updated_at": "2023-05-16T16:24:47Z", "batch_id": + "9400100208303109500775", "updated_at": "2025-03-06T19:53:10Z", "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_9b52a56df40511ed8d47ac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T16:20:43+00:00", "updated_at": "2023-05-16T16:20:43+00:00", "name": + {"id": "adr_022dc26ffac411ef8215ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:42+00:00", "updated_at": "2025-03-06T19:48:42+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": "100.00", "order_id": null, "parcel": {"id": "prcl_1ef581b6c8ae45bdbe5491ffee963dbe", - "object": "Parcel", "created_at": "2023-05-16T16:20:43Z", "updated_at": "2023-05-16T16:20:43Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_f5e430a8cc534f2daf3fa33dba28d22a", + "object": "Parcel", "created_at": "2025-03-06T19:48:42Z", "updated_at": "2025-03-06T19:48:42Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_e5fcef5ee10c491cac59dd010c0a4aad", - "created_at": "2023-05-16T16:20:44Z", "updated_at": "2023-05-16T16:20:44Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:20:44Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_2ad09f05a2e046f1bf32487531f39dee", + "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:43Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/4b53086f345a48dda9d4e391e2efa94b.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e862022dfa87524843bc70b0b440b1df21.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_b62481c50d14406c8e40d8adb9075f22", "object": - "Rate", "created_at": "2023-05-16T16:20:43Z", "updated_at": "2023-05-16T16:20:43Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_2ce689326e944e898b085dae3e55f919", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2185e021860e47889620a0b413e62f9d", - "object": "Rate", "created_at": "2023-05-16T16:20:43Z", "updated_at": "2023-05-16T16:20:43Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2ce689326e944e898b085dae3e55f919", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_144320241d66487b975b1dcdb06ae528", "object": "Rate", "created_at": - "2023-05-16T16:20:43Z", "updated_at": "2023-05-16T16:20:43Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_2ce689326e944e898b085dae3e55f919", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_1128e284b65640709f8c3340b7a593bd", "object": "Rate", "created_at": - "2023-05-16T16:20:43Z", "updated_at": "2023-05-16T16:20:43Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_2ce689326e944e898b085dae3e55f919", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_2185e021860e47889620a0b413e62f9d", - "object": "Rate", "created_at": "2023-05-16T16:20:44Z", "updated_at": "2023-05-16T16:20:44Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_2ce689326e944e898b085dae3e55f919", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_3c7a1699c44d46f0b196c0da890135c7", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210336947", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:20:44Z", - "updated_at": "2023-05-16T16:23:44Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:23:44Z", "shipment_id": "shp_2ce689326e944e898b085dae3e55f919", - "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:23:44Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:00:44Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:05:44Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:41:44Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:32:44Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:12:44Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:22:44Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + null}, "rates": [{"id": "rate_1dd3fb8f39ed4c8f94c00090bae4e0d6", "object": + "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_136e35c9133f4a7eb8327f429d09c813", + "object": "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_eb98f20bfa29451e91eceb7335b89b77", + "object": "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": "submitted", "scan_form": + null, "selected_rate": {"id": "rate_eb98f20bfa29451e91eceb7335b89b77", "object": + "Rate", "created_at": "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:48:43Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_bdaa56e02ed74f6ea2839e6ea6a4f75d", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500775", + "status": "delivered", "status_detail": "arrived_at_destination", "created_at": + "2025-03-06T19:48:43Z", "updated_at": "2025-03-06T19:51:43Z", "signed_by": + "John Tester", "weight": null, "est_delivery_date": "2025-03-06T19:51:43Z", + "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:51:43Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:28:43Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}, {"object": "TrackingDetail", + "message": "Arrived at USPS Origin Facility", "description": "", "status": + "in_transit", "status_detail": "arrived_at_facility", "datetime": "2025-02-07T18:33:43Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "NORTH HOUSTON", "state": "TX", "country": null, "zip": "77315"}}, + {"object": "TrackingDetail", "message": "Arrived at USPS Facility", "description": + "", "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": + "2025-02-08T20:09:43Z", "source": "USPS", "carrier_code": "", "tracking_location": + {"object": "TrackingLocation", "city": "COLUMBIA", "state": "SC", "country": + null, "zip": "29201"}}, {"object": "TrackingDetail", "message": "Arrived at + Post Office", "description": "", "status": "in_transit", "status_detail": + "arrived_at_facility", "datetime": "2025-02-08T23:00:43Z", "source": "USPS", + "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": + "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Sorting Complete", "description": "", "status": + "in_transit", "status_detail": "status_update", "datetime": "2025-02-09T04:40:43Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:14:44Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "TrackingDetail", "message": "Out for Delivery", "description": "", "status": + "out_for_delivery", "status_detail": "out_for_delivery", "datetime": "2025-02-09T04:50:43Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Delivered", "description": "", "status": "delivered", + "status_detail": "arrived_at_destination", "datetime": "2025-02-09T09:42:43Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -1014,9 +795,9 @@ interactions: null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:14:44Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzNjN2ExNjk5YzQ0ZDQ2ZjBiMTk2YzBkYTg5MDEzNWM3"}, - "to_address": {"id": "adr_9b500758f40511ed825bac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T16:20:43+00:00", "updated_at": "2023-05-16T16:20:43+00:00", + null, "initial_delivery_attempt": "2025-02-09T09:42:43Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2JkYWE1NmUwMmVkNzRmNmVhMjgzOWU2ZWE2YTRmNzVk"}, + "to_address": {"id": "adr_022b47a5fac411efb7663cecef1b359e", "object": "Address", + "created_at": "2025-03-06T19:48:42+00:00", "updated_at": "2025-03-06T19:48:43+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -1024,15 +805,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_9b52a56df40511ed8d47ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T16:20:43+00:00", "updated_at": - "2023-05-16T16:20:43+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_022dc26ffac411ef8215ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:42+00:00", "updated_at": + "2025-03-06T19:48:42+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_9b500758f40511ed825bac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:20:43+00:00", "updated_at": "2023-05-16T16:20:43+00:00", "name": + "adr_022b47a5fac411efb7663cecef1b359e", "object": "Address", "created_at": + "2025-03-06T19:48:42+00:00", "updated_at": "2025-03-06T19:48:43+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -1042,125 +823,96 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}, {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", - "charged": true, "refunded": false}], "id": "shp_2ce689326e944e898b085dae3e55f919", - "object": "Shipment"}, {"created_at": "2023-05-16T16:20:27Z", "is_return": - false, "messages": [{"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "delivered", "tracking_code": "9400100104262210336763", - "updated_at": "2023-05-16T16:24:57Z", "batch_id": null, "batch_status": null, - "batch_message": null, "customs_info": {"id": "cstinfo_10172b4e79a94a5eb4bca968d73043ab", - "object": "CustomsInfo", "created_at": "2023-05-16T16:20:27Z", "updated_at": - "2023-05-16T16:20:27Z", "contents_explanation": "", "contents_type": "merchandise", - "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI - 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, - "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": - [{"id": "cstitem_465c0b37aded49259ed49913fb4582e4", "object": "CustomsItem", - "created_at": "2023-05-16T16:20:27Z", "updated_at": "2023-05-16T16:20:27Z", - "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": - "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": - "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": - null}]}, "from_address": {"id": "adr_918ca00ff40511eda19fac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:20:27+00:00", "updated_at": "2023-05-16T16:20:27+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_900b5a5251024209918ae574ce7d0f80", - "object": "Parcel", "created_at": "2023-05-16T16:20:27Z", "updated_at": "2023-05-16T16:20:27Z", + "refunded": false}], "object": "Shipment"}, {"id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", + "created_at": "2025-03-06T19:48:38Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": + "9400100208303109500768", "updated_at": "2025-03-06T19:53:47Z", "batch_id": + "batch_630f25490b764fb6893a0c4489342140", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_ff44ae10fac311ef9a53ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:38+00:00", "updated_at": + "2025-03-06T19:48:38+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_480a79637cf24b8388333f968a8e5832", "object": + "Parcel", "created_at": "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_2bd0493086c2489fa5207bbdee705800", - "created_at": "2023-05-16T16:20:30Z", "updated_at": "2023-05-16T16:20:31Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:20:30Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_c008e659b44e4ae5b7b608af148502fa", + "created_at": "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:38Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/fc54a78ad9ea40d89433529638750a01.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e87ae765f615b047d6bd5551dbd2004c6a.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_cfa2b977e5a04ea897ba7275bdf26c5a", "object": - "Rate", "created_at": "2023-05-16T16:20:30Z", "updated_at": "2023-05-16T16:20:30Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_3e964a30cfbe463296491c9b787ba6b3", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a6c6230a7f2f40c5ae1dc879622269df", - "object": "Rate", "created_at": "2023-05-16T16:20:30Z", "updated_at": "2023-05-16T16:20:30Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_3e964a30cfbe463296491c9b787ba6b3", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e22379ffe1e747928345dcf43aba73dc", - "object": "Rate", "created_at": "2023-05-16T16:20:30Z", "updated_at": "2023-05-16T16:20:30Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_3e964a30cfbe463296491c9b787ba6b3", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a8123232e4b0425bb34e7e834f85b6d2", - "object": "Rate", "created_at": "2023-05-16T16:20:30Z", "updated_at": "2023-05-16T16:20:30Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3e964a30cfbe463296491c9b787ba6b3", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_a8123232e4b0425bb34e7e834f85b6d2", - "object": "Rate", "created_at": "2023-05-16T16:20:30Z", "updated_at": "2023-05-16T16:20:30Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3e964a30cfbe463296491c9b787ba6b3", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_de866766943a4320b14e00473210867f", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210336763", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:20:31Z", - "updated_at": "2023-05-16T16:23:31Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:23:31Z", "shipment_id": "shp_3e964a30cfbe463296491c9b787ba6b3", - "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:23:31Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:00:31Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:05:31Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:41:31Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:32:31Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:12:31Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:22:31Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + null}, "rates": [{"id": "rate_a7f0f17c3cce42cb8c3104d9a2a00adc", "object": + "Rate", "created_at": "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d80e1e84c445406ca0b837a6ffc9e7dc", + "object": "Rate", "created_at": "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_eb83719f66fd4f7aa087e85dc6d30d7a", + "object": "Rate", "created_at": "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_d80e1e84c445406ca0b837a6ffc9e7dc", "object": + "Rate", "created_at": "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:48:38Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_d9dbe609c13e43cab049e342d82e39c8", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500768", + "status": "delivered", "status_detail": "arrived_at_destination", "created_at": + "2025-03-06T19:48:38Z", "updated_at": "2025-03-06T19:51:38Z", "signed_by": + "John Tester", "weight": null, "est_delivery_date": "2025-03-06T19:51:38Z", + "shipment_id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:51:38Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:28:38Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}, {"object": "TrackingDetail", + "message": "Arrived at USPS Origin Facility", "description": "", "status": + "in_transit", "status_detail": "arrived_at_facility", "datetime": "2025-02-07T18:33:38Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "NORTH HOUSTON", "state": "TX", "country": null, "zip": "77315"}}, + {"object": "TrackingDetail", "message": "Arrived at USPS Facility", "description": + "", "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": + "2025-02-08T20:09:38Z", "source": "USPS", "carrier_code": "", "tracking_location": + {"object": "TrackingLocation", "city": "COLUMBIA", "state": "SC", "country": + null, "zip": "29201"}}, {"object": "TrackingDetail", "message": "Arrived at + Post Office", "description": "", "status": "in_transit", "status_detail": + "arrived_at_facility", "datetime": "2025-02-08T23:00:38Z", "source": "USPS", + "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": + "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Sorting Complete", "description": "", "status": + "in_transit", "status_detail": "status_update", "datetime": "2025-02-09T04:40:38Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Out for Delivery", "description": "", "status": + "out_for_delivery", "status_detail": "out_for_delivery", "datetime": "2025-02-09T04:50:38Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:14:31Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "TrackingDetail", "message": "Delivered", "description": "", "status": "delivered", + "status_detail": "arrived_at_destination", "datetime": "2025-02-09T09:42:38Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -1169,140 +921,124 @@ interactions: null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:14:31Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2RlODY2NzY2OTQzYTQzMjBiMTRlMDA0NzMyMTA4Njdm"}, - "to_address": {"id": "adr_918a5d54f40511edb1ec3cecef1b359e", "object": "Address", - "created_at": "2023-05-16T16:20:27+00:00", "updated_at": "2023-05-16T16:20:30+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "usps_zone": - 4, "return_address": {"id": "adr_918ca00ff40511eda19fac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:20:27+00:00", "updated_at": "2023-05-16T16:20:27+00:00", - "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": - "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "buyer_address": {"id": "adr_918a5d54f40511edb1ec3cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:20:27+00:00", "updated_at": "2023-05-16T16:20:30+00:00", - "name": "ELIZABETH SWAN", "company": null, "street1": "179 N HARBOR DR", "street2": - null, "city": "REDONDO BEACH", "state": "CA", "zip": "90277-2506", "country": + null, "initial_delivery_attempt": "2025-02-09T09:42:38Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2Q5ZGJlNjA5YzEzZTQzY2FiMDQ5ZTM0MmQ4MmUzOWM4"}, + "to_address": {"id": "adr_ff4275bffac311ef8092ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-06T19:48:37+00:00", "updated_at": "2025-03-06T19:48:38+00:00", + "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", + "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "country": "US", "phone": "", "email": "", "mode": "test", + "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": + null, "verifications": {"zip4": {"success": true, "errors": [], "details": + null}, "delivery": {"success": true, "errors": [], "details": {"latitude": + 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, + "usps_zone": 4, "return_address": {"id": "adr_ff44ae10fac311ef9a53ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:38+00:00", "updated_at": + "2025-03-06T19:48:38+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": + "adr_ff4275bffac311ef8092ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-06T19:48:37+00:00", "updated_at": "2025-03-06T19:48:38+00:00", "name": + "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": + null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": false, "federal_tax_id": null, "state_tax_id": null, - "verifications": {"zip4": {"success": true, "errors": [], "details": null}, - "delivery": {"success": true, "errors": [], "details": {"latitude": 33.8436, - "longitude": -118.39177, "time_zone": "America/Los_Angeles"}}}}, "forms": - [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": - true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": - "6.07000", "charged": true, "refunded": false}], "id": "shp_3e964a30cfbe463296491c9b787ba6b3", - "object": "Shipment"}, {"created_at": "2023-05-16T15:35:33Z", "is_return": - false, "messages": [], "mode": "test", "options": {"currency": "USD", "payment": - {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", - "tracking_code": "9400100104262210322155", "updated_at": "2023-05-16T15:40:26Z", - "batch_id": "batch_0897e22d382a43c4910829b48a77ed84", "batch_status": "postage_purchased", - "batch_message": null, "customs_info": null, "from_address": {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T15:35:33+00:00", "updated_at": - "2023-05-16T15:35:33+00:00", "name": "Elizabeth Swan", "company": null, "street1": + null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": + {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": + true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, + "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", + "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, + {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, + "refunded": false}], "object": "Shipment"}, {"id": "shp_43d0816a4bf241d5a702f97b81425f24", + "created_at": "2025-03-06T19:48:36Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": + "9400100208303109500751", "updated_at": "2025-03-06T19:53:16Z", "batch_id": + "batch_79e595508b8249d285297981d837de57", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_fe6f91fcfac311ef8015ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:36+00:00", "updated_at": + "2025-03-06T19:48:36+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": - null, "parcel": {"id": "prcl_f90962fc4acd47b9b5008e7f08ba33fc", "object": - "Parcel", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", + null, "parcel": {"id": "prcl_aeedd45070e94837a86fa2e2da97233b", "object": + "Parcel", "created_at": "2025-03-06T19:48:36Z", "updated_at": "2025-03-06T19:48:36Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_7b6c47a83d794f24b88d7a10b1fd332d", - "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:34Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T15:35:34Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_9f5cea59bcb042ca98ab8515b7756ae6", + "created_at": "2025-03-06T19:48:37Z", "updated_at": "2025-03-06T19:48:37Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:37Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/ccc578993f1e4d41a2f46a2721a56982.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e81c696f9c811c493e8e49bf48bc24e6c0.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_2779ff61f3dc4f63a486b6d6f1a04c6a", "object": - "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8b1babb654e74212ad25c8fcffe8af62", - "object": "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8969a7b87c9e451a888226dc9deed52b", - "object": "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_04d55ba308964270bca1ff2fbd98ecd9", - "object": "Rate", "created_at": "2023-05-16T15:35:33Z", "updated_at": "2023-05-16T15:35:33Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": {"id": "sf_3e24eda871db4cbf9af092c5399f5adc", - "object": "ScanForm", "created_at": "2023-05-16T15:35:34Z", "updated_at": - "2023-05-16T15:35:35Z", "tracking_codes": ["9400100104262210322155"], "address": - {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T15:35:33+00:00", "updated_at": "2023-05-16T15:35:33+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "status": "created", "message": null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/2244428c081045f9b846b5a3cc89b2fd.pdf", - "form_file_type": null, "batch_id": "batch_0897e22d382a43c4910829b48a77ed84", - "confirmation": null}, "selected_rate": {"id": "rate_04d55ba308964270bca1ff2fbd98ecd9", - "object": "Rate", "created_at": "2023-05-16T15:35:34Z", "updated_at": "2023-05-16T15:35:34Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_e75df861742345299c7c79743f8d40e8", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_b050765bf01c47119b433af5f2f5fafc", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210322155", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T15:35:34Z", - "updated_at": "2023-05-16T15:38:34Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T15:38:34Z", "shipment_id": "shp_e75df861742345299c7c79743f8d40e8", - "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T15:38:34Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T04:15:34Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T14:20:34Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T15:56:34Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T18:47:34Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T00:27:34Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T00:37:34Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + null}, "rates": [{"id": "rate_4344a910832949d09a932e6ef4ae5de6", "object": + "Rate", "created_at": "2025-03-06T19:48:36Z", "updated_at": "2025-03-06T19:48:36Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_43d0816a4bf241d5a702f97b81425f24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_0af220057774417cb477fa4351ed3fdb", + "object": "Rate", "created_at": "2025-03-06T19:48:36Z", "updated_at": "2025-03-06T19:48:36Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_43d0816a4bf241d5a702f97b81425f24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2b081a49a9dd47629a281dc4024423ef", + "object": "Rate", "created_at": "2025-03-06T19:48:36Z", "updated_at": "2025-03-06T19:48:36Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_43d0816a4bf241d5a702f97b81425f24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_2b081a49a9dd47629a281dc4024423ef", "object": + "Rate", "created_at": "2025-03-06T19:48:37Z", "updated_at": "2025-03-06T19:48:37Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_43d0816a4bf241d5a702f97b81425f24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_d2334116ca1a44d594b097143f314914", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500751", + "status": "delivered", "status_detail": "arrived_at_destination", "created_at": + "2025-03-06T19:48:37Z", "updated_at": "2025-03-06T19:51:37Z", "signed_by": + "John Tester", "weight": null, "est_delivery_date": "2025-03-06T19:51:37Z", + "shipment_id": "shp_43d0816a4bf241d5a702f97b81425f24", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:51:37Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:28:37Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}, {"object": "TrackingDetail", + "message": "Arrived at USPS Origin Facility", "description": "", "status": + "in_transit", "status_detail": "arrived_at_facility", "datetime": "2025-02-07T18:33:37Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "NORTH HOUSTON", "state": "TX", "country": null, "zip": "77315"}}, + {"object": "TrackingDetail", "message": "Arrived at USPS Facility", "description": + "", "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": + "2025-02-08T20:09:37Z", "source": "USPS", "carrier_code": "", "tracking_location": + {"object": "TrackingLocation", "city": "COLUMBIA", "state": "SC", "country": + null, "zip": "29201"}}, {"object": "TrackingDetail", "message": "Arrived at + Post Office", "description": "", "status": "in_transit", "status_detail": + "arrived_at_facility", "datetime": "2025-02-08T23:00:37Z", "source": "USPS", + "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": + "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Sorting Complete", "description": "", "status": + "in_transit", "status_detail": "status_update", "datetime": "2025-02-09T04:40:37Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Out for Delivery", "description": "", "status": + "out_for_delivery", "status_detail": "out_for_delivery", "datetime": "2025-02-09T04:50:37Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T05:29:34Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "TrackingDetail", "message": "Delivered", "description": "", "status": "delivered", + "status_detail": "arrived_at_destination", "datetime": "2025-02-09T09:42:37Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -1311,9 +1047,9 @@ interactions: null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T05:29:34Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2IwNTA3NjViZjAxYzQ3MTE5YjQzM2FmNWYyZjVmYWZj"}, - "to_address": {"id": "adr_4c0e7406f3ff11eda517ac1f6b0a0d1e", "object": "Address", - "created_at": "2023-05-16T15:35:33+00:00", "updated_at": "2023-05-16T15:35:33+00:00", + null, "initial_delivery_attempt": "2025-02-09T09:42:37Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2QyMzM0MTE2Y2ExYTQ0ZDU5NGIwOTcxNDNmMzE0OTE0"}, + "to_address": {"id": "adr_fe6c632cfac311ef947aac1f6bc539aa", "object": "Address", + "created_at": "2025-03-06T19:48:36+00:00", "updated_at": "2025-03-06T19:48:36+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -1321,15 +1057,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_4c10c15ef3ff11edbb43ac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T15:35:33+00:00", "updated_at": - "2023-05-16T15:35:33+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_fe6f91fcfac311ef8015ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-06T19:48:36+00:00", "updated_at": + "2025-03-06T19:48:36+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_4c0e7406f3ff11eda517ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T15:35:33+00:00", "updated_at": "2023-05-16T15:35:33+00:00", "name": + "adr_fe6c632cfac311ef947aac1f6bc539aa", "object": "Address", "created_at": + "2025-03-06T19:48:36+00:00", "updated_at": "2025-03-06T19:48:36+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -1339,113 +1075,96 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_e75df861742345299c7c79743f8d40e8", "object": - "Shipment"}, {"created_at": "2023-05-16T15:35:31Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, + "refunded": false}], "object": "Shipment"}, {"id": "shp_6f3635c994834c9294c472c755a7d5c8", + "created_at": "2025-03-06T19:48:35Z", "is_return": false, "messages": [], + "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, "status": "delivered", "tracking_code": - "9400100104262210322148", "updated_at": "2023-05-16T15:40:19Z", "batch_id": - "batch_1556ea8d81c94d07911dd0eab99ec9fe", "batch_status": "postage_purchased", - "batch_message": null, "customs_info": null, "from_address": {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T15:35:31+00:00", "updated_at": - "2023-05-16T15:35:31+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "9400100208303109500744", "updated_at": "2025-03-06T19:52:45Z", "batch_id": + "batch_fcc77d8805f147268168924cffaf2812", "batch_status": "postage_purchased", + "batch_message": null, "customs_info": null, "from_address": {"id": "adr_fd879850fac311ef9967ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:35+00:00", "updated_at": + "2025-03-06T19:48:35+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": - null, "parcel": {"id": "prcl_97a9b127466144618d467aa475905b33", "object": - "Parcel", "created_at": "2023-05-16T15:35:31Z", "updated_at": "2023-05-16T15:35:31Z", + null, "parcel": {"id": "prcl_729b4515e73243fc8687d858eacbe45a", "object": + "Parcel", "created_at": "2025-03-06T19:48:35Z", "updated_at": "2025-03-06T19:48:35Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_99b94a85b2234933a2e3f2d90752e96a", - "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T15:35:32Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_da056b368571435eaa0778e503274bd9", + "created_at": "2025-03-06T19:48:35Z", "updated_at": "2025-03-06T19:48:35Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-06T19:48:35Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/ceff03b2653c4b36850eb2081fadeb7f.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250306/e89b9cef5543304b1e9e548d764e60e2a6.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_264cf6b604004861aec1bdfe9c752977", "object": - "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ab93efcacbc7424e8c19a4612902c982", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_142b77c6d9e9485e865fecb816825970", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_159ad3a23fa641dbb2f33bb9bfbbafdc", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": {"id": "sf_4bc2f73b448747db89c9023c0dcfc53a", - "object": "ScanForm", "created_at": "2023-05-16T15:35:33Z", "updated_at": - "2023-05-16T15:35:33Z", "tracking_codes": ["9400100104262210322148"], "address": - {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T15:35:31+00:00", "updated_at": "2023-05-16T15:35:31+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "status": "created", "message": null, "form_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/scan_form/20230516/5b62bfdffb694512ac744379dac2b304.pdf", - "form_file_type": null, "batch_id": "batch_1556ea8d81c94d07911dd0eab99ec9fe", - "confirmation": null}, "selected_rate": {"id": "rate_159ad3a23fa641dbb2f33bb9bfbbafdc", - "object": "Rate", "created_at": "2023-05-16T15:35:32Z", "updated_at": "2023-05-16T15:35:32Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_ecb4968651e7484eabaed3825d1100ed", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_73bffbfc8c0a4eefab463dd925395cfe", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210322148", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T15:35:33Z", - "updated_at": "2023-05-16T15:38:33Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T15:38:33Z", "shipment_id": "shp_ecb4968651e7484eabaed3825d1100ed", - "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T15:38:33Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T04:15:33Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T14:20:33Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T15:56:33Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T18:47:33Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T00:27:33Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T00:37:33Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + null}, "rates": [{"id": "rate_3cbbb0e14500425cbee1eba143336050", "object": + "Rate", "created_at": "2025-03-06T19:48:35Z", "updated_at": "2025-03-06T19:48:35Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6f3635c994834c9294c472c755a7d5c8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5c22c527001947a1b76178c46929a1d6", + "object": "Rate", "created_at": "2025-03-06T19:48:35Z", "updated_at": "2025-03-06T19:48:35Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6f3635c994834c9294c472c755a7d5c8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ab25722b6f0e4442b4738a5c05b5bcee", + "object": "Rate", "created_at": "2025-03-06T19:48:35Z", "updated_at": "2025-03-06T19:48:35Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_6f3635c994834c9294c472c755a7d5c8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_5c22c527001947a1b76178c46929a1d6", "object": + "Rate", "created_at": "2025-03-06T19:48:35Z", "updated_at": "2025-03-06T19:48:35Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_6f3635c994834c9294c472c755a7d5c8", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_ec716c707447468ca43e51402edc08e1", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109500744", + "status": "delivered", "status_detail": "arrived_at_destination", "created_at": + "2025-03-06T19:48:35Z", "updated_at": "2025-03-06T19:51:36Z", "signed_by": + "John Tester", "weight": null, "est_delivery_date": "2025-03-06T19:51:36Z", + "shipment_id": "shp_6f3635c994834c9294c472c755a7d5c8", "carrier": "USPS", + "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment + Info Sent to USPS", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-06T19:51:36Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:28:36Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}, {"object": "TrackingDetail", + "message": "Arrived at USPS Origin Facility", "description": "", "status": + "in_transit", "status_detail": "arrived_at_facility", "datetime": "2025-02-07T18:33:36Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "NORTH HOUSTON", "state": "TX", "country": null, "zip": "77315"}}, + {"object": "TrackingDetail", "message": "Arrived at USPS Facility", "description": + "", "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": + "2025-02-08T20:09:36Z", "source": "USPS", "carrier_code": "", "tracking_location": + {"object": "TrackingLocation", "city": "COLUMBIA", "state": "SC", "country": + null, "zip": "29201"}}, {"object": "TrackingDetail", "message": "Arrived at + Post Office", "description": "", "status": "in_transit", "status_detail": + "arrived_at_facility", "datetime": "2025-02-08T23:00:36Z", "source": "USPS", + "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": + "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Sorting Complete", "description": "", "status": + "in_transit", "status_detail": "status_update", "datetime": "2025-02-09T04:40:36Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": + "TrackingDetail", "message": "Out for Delivery", "description": "", "status": + "out_for_delivery", "status_detail": "out_for_delivery", "datetime": "2025-02-09T04:50:36Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T05:29:33Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "TrackingDetail", "message": "Delivered", "description": "", "status": "delivered", + "status_detail": "arrived_at_destination", "datetime": "2025-02-09T09:42:36Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -1454,9 +1173,9 @@ interactions: null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T05:29:33Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzczYmZmYmZjOGMwYTRlZWZhYjQ2M2RkOTI1Mzk1Y2Zl"}, - "to_address": {"id": "adr_4af3f434f3ff11edb17dac1f6bc72124", "object": "Address", - "created_at": "2023-05-16T15:35:31+00:00", "updated_at": "2023-05-16T15:35:32+00:00", + null, "initial_delivery_attempt": "2025-02-09T09:42:36Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2VjNzE2YzcwNzQ0NzQ2OGNhNDNlNTE0MDJlZGMwOGUx"}, + "to_address": {"id": "adr_fd8526defac311ef9965ac1f6bc53342", "object": "Address", + "created_at": "2025-03-06T19:48:35+00:00", "updated_at": "2025-03-06T19:48:35+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -1464,15 +1183,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_4af61f14f3ff11edb181ac1f6bc72124", - "object": "Address", "created_at": "2023-05-16T15:35:31+00:00", "updated_at": - "2023-05-16T15:35:31+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_fd879850fac311ef9967ac1f6bc53342", + "object": "Address", "created_at": "2025-03-06T19:48:35+00:00", "updated_at": + "2025-03-06T19:48:35+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_4af3f434f3ff11edb17dac1f6bc72124", "object": "Address", "created_at": - "2023-05-16T15:35:31+00:00", "updated_at": "2023-05-16T15:35:32+00:00", "name": + "adr_fd8526defac311ef9965ac1f6bc53342", "object": "Address", "created_at": + "2025-03-06T19:48:35+00:00", "updated_at": "2025-03-06T19:48:35+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -1482,17 +1201,14 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_ecb4968651e7484eabaed3825d1100ed", "object": - "Shipment"}], "has_more": true}' + "refunded": false}], "object": "Shipment"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '54781' + - '48352' content-type: - application/json; charset=utf-8 - etag: - - W/"5597810338af3e5722f69767df1c0da3" expires: - '0' pragma: @@ -1510,20 +1226,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afe1e7872f5a0027a2bf + - 6eaaf8fe67cb22dbe2aaba21000adefc x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb56nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.487555' + - '0.520126' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_insure.yaml b/tests/cassettes/test_shipment_insure.yaml index 9349a495..3c0201a0 100644 --- a/tests/cassettes/test_shipment_insure.yaml +++ b/tests/cassettes/test_shipment_insure.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS", "insurance": 0}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS", "insurance": 0}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '636' + - '622' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:36Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210341620", "updated_at": "2023-05-16T16:31:37Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_204e9e9df40711edb388ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:36+00:00", "updated_at": "2023-05-16T16:31:36+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_5f173f47c4e748fd90774f0fe1ad2567", - "object": "Parcel", "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", + string: '{"id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "created_at": "2025-03-07T16:46:24Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505671", "updated_at": + "2025-03-07T16:46:24Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_b49f9c17fb7311efbe65ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:24+00:00", "updated_at": + "2025-03-07T16:46:24+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_97470acd7a494a24b49be9ee793f584d", "object": + "Parcel", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_855bcf115c77479c849d10afeec7c4e1", - "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:31:36Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_df583729b3e9487291232b4ee41a6506", + "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:24Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/0494039080754493aa947f38923cd9e4.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8fdd2a2efa0eb45329181a8f581652f96.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_0c097f84ef7d4f00a10564b9ed28103c", "object": - "Rate", "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_544dd6cca19d4ff4bfca9a7a8ae88716", "object": "Rate", "created_at": - "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_b0b0c40403c94bc9b18e6d7521f243cd", "object": "Rate", "created_at": - "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_c6d60679d7e846baa59d36077e3c28e0", "object": "Rate", "created_at": - "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_0c097f84ef7d4f00a10564b9ed28103c", - "object": "Rate", "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_b6607dd3b1ee487e81a804d42383628c", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210341620", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T16:31:37Z", "updated_at": - "2023-05-16T16:31:37Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier": "USPS", + null}, "rates": [{"id": "rate_1d2d5ec4f19d4d9a88eaf4e5a178ebfb", "object": + "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4847e8fad6fb4da8b81e7f34ebdfffd0", + "object": "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_43c50eba68974b2fbe70f32685c8574e", + "object": "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_1d2d5ec4f19d4d9a88eaf4e5a178ebfb", "object": + "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_b450ba648e2744a09045105d7138dc9a", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505671", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:24Z", + "updated_at": "2025-03-07T16:46:24Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrX2I2NjA3ZGQzYjFlZTQ4N2U4MWE4MDRkNDIzODM2Mjhj"}, - "to_address": {"id": "adr_204bc91ff40711edb387ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T16:31:36+00:00", "updated_at": "2023-05-16T16:31:36+00:00", + "https://track.easypost.com/djE6dHJrX2I0NTBiYTY0OGUyNzQ0YTA5MDQ1MTA1ZDcxMzhkYzlh"}, + "to_address": {"id": "adr_b49cbb25fb7311efbe63ac1f6bc53342", "object": "Address", + "created_at": "2025-03-07T16:46:24+00:00", "updated_at": "2025-03-07T16:46:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_204e9e9df40711edb388ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T16:31:36+00:00", "updated_at": - "2023-05-16T16:31:36+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_b49f9c17fb7311efbe65ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:24+00:00", "updated_at": + "2025-03-07T16:46:24+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_204bc91ff40711edb387ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:36+00:00", "updated_at": "2023-05-16T16:31:36+00:00", "name": + "adr_b49cbb25fb7311efbe63ac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:24+00:00", "updated_at": "2025-03-07T16:46:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"5230f76df5c4139599f4b5572762e479" expires: - '0' location: - - /api/v2/shipments/shp_3afa3dc2ef6c4d008cac6ccc08e4aef7 + - /api/v2/shipments/shp_2b8295fe50f048baaaf8378ba1a4b629 pragma: - no-cache referrer-policy: @@ -146,20 +138,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afe8e7872f5e0027a4db + - 6eaaf8fb67cb22e0e2aabd59000ae6e5 x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.977281' + - '0.786268' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -183,77 +175,72 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/shipments/shp_3afa3dc2ef6c4d008cac6ccc08e4aef7/insure + uri: https://api.easypost.com/v2/shipments/shp_2b8295fe50f048baaaf8378ba1a4b629/insure response: body: - string: '{"created_at": "2023-05-16T16:31:36Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210341620", "updated_at": "2023-05-16T16:31:37Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_204e9e9df40711edb388ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:36+00:00", "updated_at": "2023-05-16T16:31:36+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": "100.00", "order_id": null, "parcel": {"id": "prcl_5f173f47c4e748fd90774f0fe1ad2567", - "object": "Parcel", "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", + string: '{"id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "created_at": "2025-03-07T16:46:24Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505671", "updated_at": + "2025-03-07T16:46:24Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_b49f9c17fb7311efbe65ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:24+00:00", "updated_at": + "2025-03-07T16:46:24+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": "100.00", "order_id": + null, "parcel": {"id": "prcl_97470acd7a494a24b49be9ee793f584d", "object": + "Parcel", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_855bcf115c77479c849d10afeec7c4e1", - "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:31:36Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_df583729b3e9487291232b4ee41a6506", + "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:24Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/0494039080754493aa947f38923cd9e4.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e8fdd2a2efa0eb45329181a8f581652f96.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_0c097f84ef7d4f00a10564b9ed28103c", "object": - "Rate", "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_544dd6cca19d4ff4bfca9a7a8ae88716", "object": "Rate", "created_at": - "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_b0b0c40403c94bc9b18e6d7521f243cd", "object": "Rate", "created_at": - "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_c6d60679d7e846baa59d36077e3c28e0", "object": "Rate", "created_at": - "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_0c097f84ef7d4f00a10564b9ed28103c", - "object": "Rate", "created_at": "2023-05-16T16:31:36Z", "updated_at": "2023-05-16T16:31:36Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_b6607dd3b1ee487e81a804d42383628c", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210341620", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:31:37Z", "updated_at": - "2023-05-16T16:31:37Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:31:37Z", "shipment_id": "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", + null}, "rates": [{"id": "rate_1d2d5ec4f19d4d9a88eaf4e5a178ebfb", "object": + "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4847e8fad6fb4da8b81e7f34ebdfffd0", + "object": "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_43c50eba68974b2fbe70f32685c8574e", + "object": "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_1d2d5ec4f19d4d9a88eaf4e5a178ebfb", "object": + "Rate", "created_at": "2025-03-07T16:46:24Z", "updated_at": "2025-03-07T16:46:24Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_b450ba648e2744a09045105d7138dc9a", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505671", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:25Z", + "updated_at": "2025-03-07T16:46:25Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:25Z", "shipment_id": "shp_2b8295fe50f048baaaf8378ba1a4b629", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:31:37Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:25Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:08:37Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:25Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -261,9 +248,9 @@ interactions: {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrX2I2NjA3ZGQzYjFlZTQ4N2U4MWE4MDRkNDIzODM2Mjhj"}, - "to_address": {"id": "adr_204bc91ff40711edb387ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T16:31:36+00:00", "updated_at": "2023-05-16T16:31:36+00:00", + null}, "public_url": "https://track.easypost.com/djE6dHJrX2I0NTBiYTY0OGUyNzQ0YTA5MDQ1MTA1ZDcxMzhkYzlh"}, + "to_address": {"id": "adr_b49cbb25fb7311efbe63ac1f6bc53342", "object": "Address", + "created_at": "2025-03-07T16:46:24+00:00", "updated_at": "2025-03-07T16:46:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -271,15 +258,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_204e9e9df40711edb388ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T16:31:36+00:00", "updated_at": - "2023-05-16T16:31:36+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_b49f9c17fb7311efbe65ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:24+00:00", "updated_at": + "2025-03-07T16:46:24+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_204bc91ff40711edb387ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:36+00:00", "updated_at": "2023-05-16T16:31:36+00:00", "name": + "adr_b49cbb25fb7311efbe63ac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:46:24+00:00", "updated_at": "2025-03-07T16:46:24+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -290,17 +277,14 @@ interactions: "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, "refunded": false}, {"object": "Fee", "type": "InsuranceFee", "amount": "1.00000", - "charged": true, "refunded": false}], "id": "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", - "object": "Shipment"}' + "charged": true, "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '8213' + - '7680' content-type: - application/json; charset=utf-8 - etag: - - W/"dc0abe3a368a69d444d06fc3cf30d2ea" expires: - '0' pragma: @@ -318,20 +302,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afe9e7872f5e0027a541 + - 6eaaf8fb67cb22e0e2aabd59000ae866 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.159051' + - '0.231941' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_lowest_rate.yaml b/tests/cassettes/test_shipment_lowest_rate.yaml index 588671a8..85771aa6 100644 --- a/tests/cassettes/test_shipment_lowest_rate.yaml +++ b/tests/cassettes/test_shipment_lowest_rate.yaml @@ -11,7 +11,7 @@ interactions: "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": - "PNG", "invoice_number": "123"}, "reference": "123"}, "carbon_offset": false}' + "PNG", "invoice_number": "123"}, "reference": "123"}}' headers: Accept: - '*/*' @@ -20,7 +20,7 @@ interactions: Connection: - keep-alive Content-Length: - - '978' + - '954' Content-Type: - application/json authorization: @@ -31,106 +31,84 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:44Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": null, "updated_at": - "2023-05-16T16:31:45Z", "batch_id": null, "batch_status": null, "batch_message": - null, "customs_info": {"id": "cstinfo_54eaea8ef16d4d3798f6cf27a0ce941a", "object": - "CustomsInfo", "created_at": "2023-05-16T16:31:44Z", "updated_at": "2023-05-16T16:31:44Z", - "contents_explanation": "", "contents_type": "merchandise", "customs_certify": - true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": - "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_f4332e0388e847529856b68774cebe0f", - "object": "CustomsItem", "created_at": "2023-05-16T16:31:44Z", "updated_at": - "2023-05-16T16:31:44Z", "description": "Sweet shirts", "hs_tariff_number": - "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": - 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, - "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": - "adr_255ed3f5f40711ed8dd6ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:44+00:00", "updated_at": "2023-05-16T16:31:44+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_e9dc4b01c43d4047989d0844ccc0e90d", "created_at": "2025-03-07T16:46:28Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-07T16:46:28Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_6b3487fe8a534562b0847a9ad5a49b7d", + "object": "CustomsInfo", "created_at": "2025-03-07T16:46:28Z", "updated_at": + "2025-03-07T16:46:28Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_ce7a4868a5824137b7bda7c60ddaff9d", "object": "CustomsItem", + "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_b71d27defb7311ef9e4b3cecef1b359e", "object": + "Address", "created_at": "2025-03-07T16:46:28+00:00", "updated_at": "2025-03-07T16:46:28+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_6656e4f8822c4ec6a289a5af711355b4", - "object": "Parcel", "created_at": "2023-05-16T16:31:44Z", "updated_at": "2023-05-16T16:31:44Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_702dd686084e4e34b74bdd624b9b09f0", + "object": "Parcel", "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_96eba0fe328941b7be7b6fc77aaec41c", - "object": "Rate", "created_at": "2023-05-16T16:31:45Z", "updated_at": "2023-05-16T16:31:45Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_bb41876b10e24f86883c5da28719e72d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d9fdaa990a654c81931c4a2dc8b829e1", - "object": "Rate", "created_at": "2023-05-16T16:31:45Z", "updated_at": "2023-05-16T16:31:45Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_bb41876b10e24f86883c5da28719e72d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9a9e200f66464805bd2f9db7b63735aa", - "object": "Rate", "created_at": "2023-05-16T16:31:45Z", "updated_at": "2023-05-16T16:31:45Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_615f8972ee0c4832b134a56c2ae3ce49", + "object": "Rate", "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_bb41876b10e24f86883c5da28719e72d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ec758bd3238e49f38c67abdf740fd8c7", - "object": "Rate", "created_at": "2023-05-16T16:31:45Z", "updated_at": "2023-05-16T16:31:45Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_bb41876b10e24f86883c5da28719e72d", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_255d28fff40711ed8dcdac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:31:44+00:00", "updated_at": "2023-05-16T16:31:44+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_255ed3f5f40711ed8dd6ac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T16:31:44+00:00", "updated_at": - "2023-05-16T16:31:44+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_e9dc4b01c43d4047989d0844ccc0e90d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e7e30ac3fd0941ccb694da73ac863596", + "object": "Rate", "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_e9dc4b01c43d4047989d0844ccc0e90d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_52db8b50a7d5424c83023f3f8051bc5b", + "object": "Rate", "created_at": "2025-03-07T16:46:28Z", "updated_at": "2025-03-07T16:46:28Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_e9dc4b01c43d4047989d0844ccc0e90d", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b71a26e0fb7311efa533ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:28+00:00", "updated_at": + "2025-03-07T16:46:28+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_255d28fff40711ed8dcdac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:44+00:00", "updated_at": "2023-05-16T16:31:44+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b71d27defb7311ef9e4b3cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:46:28+00:00", "updated_at": "2025-03-07T16:46:28+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b71a26e0fb7311efa533ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:28+00:00", "updated_at": "2025-03-07T16:46:28+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_bb41876b10e24f86883c5da28719e72d", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6722' + - '5160' content-type: - application/json; charset=utf-8 - etag: - - W/"4045fa9f6edbe761b61b2b2e22b74ea1" expires: - '0' location: - - /api/v2/shipments/shp_bb41876b10e24f86883c5da28719e72d + - /api/v2/shipments/shp_e9dc4b01c43d4047989d0844ccc0e90d pragma: - no-cache referrer-policy: @@ -146,20 +124,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e06463aff0e7872f980027a7f0 + - 6eaaf8fd67cb22e4e2aabd76000aed3c x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.675475' + - '0.235585' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_lowest_smart_rate.yaml b/tests/cassettes/test_shipment_lowest_smart_rate.yaml index a420bc0e..381d4720 100644 --- a/tests/cassettes/test_shipment_lowest_smart_rate.yaml +++ b/tests/cassettes/test_shipment_lowest_smart_rate.yaml @@ -6,7 +6,7 @@ interactions: "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": false}' + 15.4}}}' headers: Accept: - '*/*' @@ -15,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '520' + - '496' Content-Type: - application/json authorization: @@ -26,95 +26,73 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:45Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:46Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_25f60894f40711edbd14ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:45+00:00", "updated_at": "2023-05-16T16:31:45+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_a4605012cda9465e92bade0b88927a75", "created_at": "2025-03-07T16:51:01Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:51:01Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_5a22dca8fb7411efa497ac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:51:01+00:00", "updated_at": "2025-03-07T16:51:01+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_93ca73727c074448a2c2b78be2fdd7ad", - "object": "Parcel", "created_at": "2023-05-16T16:31:45Z", "updated_at": "2023-05-16T16:31:45Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_31755125728340aeaf2818c963d0e8e8", + "object": "Parcel", "created_at": "2025-03-07T16:51:01Z", "updated_at": "2025-03-07T16:51:01Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_6c7ad12cb9a94561ac6cfe6a5fcf65bc", - "object": "Rate", "created_at": "2023-05-16T16:31:46Z", "updated_at": "2023-05-16T16:31:46Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_5814100ba2084466be320ba396b61730", + "object": "Rate", "created_at": "2025-03-07T16:51:02Z", "updated_at": "2025-03-07T16:51:02Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a9d48b6177524630829bdbd1c6d99cf9", + "object": "Rate", "created_at": "2025-03-07T16:51:02Z", "updated_at": "2025-03-07T16:51:02Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_43eb2dca7f5c44ca8d622f129f9b3eae", + "object": "Rate", "created_at": "2025-03-07T16:51:02Z", "updated_at": "2025-03-07T16:51:02Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a389d8d9c62541579fbd21669a223271", - "object": "Rate", "created_at": "2023-05-16T16:31:46Z", "updated_at": "2023-05-16T16:31:46Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_8acff0a4a916424da4e1f4f3fe072984", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_438469a9e1bc49188d85f5d3f8116fa8", "object": "Rate", "created_at": - "2023-05-16T16:31:46Z", "updated_at": "2023-05-16T16:31:46Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_8acff0a4a916424da4e1f4f3fe072984", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_a362cf2e07e942b7896c6967083a7ef7", "object": "Rate", "created_at": - "2023-05-16T16:31:46Z", "updated_at": "2023-05-16T16:31:46Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_8acff0a4a916424da4e1f4f3fe072984", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_25f1ec31f40711edb8dcac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-16T16:31:45+00:00", "updated_at": "2023-05-16T16:31:45+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_25f60894f40711edbd14ac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T16:31:45+00:00", "updated_at": - "2023-05-16T16:31:45+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_5a1fec64fb7411ef84563cecef1b359e", + "object": "Address", "created_at": "2025-03-07T16:51:01+00:00", "updated_at": + "2025-03-07T16:51:01+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_25f1ec31f40711edb8dcac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:45+00:00", "updated_at": "2023-05-16T16:31:45+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_5a22dca8fb7411efa497ac1f6bc53342", "object": "Address", "created_at": + "2025-03-07T16:51:01+00:00", "updated_at": "2025-03-07T16:51:01+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_5a1fec64fb7411ef84563cecef1b359e", "object": + "Address", "created_at": "2025-03-07T16:51:01+00:00", "updated_at": "2025-03-07T16:51:01+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_8acff0a4a916424da4e1f4f3fe072984", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '5851' + - '4325' content-type: - application/json; charset=utf-8 - etag: - - W/"1f09bb01fd9100581ed495ef74d2a294" expires: - '0' location: - - /api/v2/shipments/shp_8acff0a4a916424da4e1f4f3fe072984 + - /api/v2/shipments/shp_a4605012cda9465e92bade0b88927a75 pragma: - no-cache referrer-policy: @@ -130,20 +108,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463aff1e7872f990027a859 + - 6eaaf8fe67cb23f5e2aac23e000c2fe0 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb58nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.724446' + - '0.361031' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -163,53 +141,42 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_8acff0a4a916424da4e1f4f3fe072984/smartrate + uri: https://api.easypost.com/v2/shipments/shp_a4605012cda9465e92bade0b88927a75/smartrate response: body: string: '{"result": [{"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:46Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": - 2, "id": "rate_6c7ad12cb9a94561ac6cfe6a5fcf65bc", "list_currency": "USD", - "list_rate": 8.24, "mode": "test", "object": "Rate", "rate": 7.15, "retail_currency": - "USD", "retail_rate": 10.2, "service": "Priority", "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", - "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": - 2, "percentile_90": 2, "percentile_95": 2, "percentile_97": 3, "percentile_99": - 3}, "updated_at": "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:46Z", - "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 3, "est_delivery_days": 3, "id": "rate_a389d8d9c62541579fbd21669a223271", - "list_currency": "USD", "list_rate": 6.07, "mode": "test", "object": "Rate", - "rate": 6.07, "retail_currency": "USD", "retail_rate": 6.07, "service": "First", - "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 3, "percentile_97": 4, "percentile_99": 5}, "updated_at": - "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:46Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": null, "est_delivery_days": - null, "id": "rate_438469a9e1bc49188d85f5d3f8116fa8", "list_currency": "USD", - "list_rate": 31.25, "mode": "test", "object": "Rate", "rate": 31.25, "retail_currency": - "USD", "retail_rate": 35.8, "service": "Express", "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", + "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 3, "est_delivery_days": + 3, "id": "rate_5814100ba2084466be320ba396b61730", "list_currency": "USD", + "list_rate": 6.57, "mode": "test", "object": "Rate", "rate": 6.07, "retail_currency": + "USD", "retail_rate": 8.85, "service": "GroundAdvantage", "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "time_in_transit": {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": 2, "percentile_95": 3, "percentile_97": 3, "percentile_99": - 4}, "updated_at": "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:46Z", + 4}, "updated_at": "2025-03-07T16:51:02Z"}, {"carrier": "USPS", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 5, "est_delivery_days": 5, "id": "rate_a362cf2e07e942b7896c6967083a7ef7", - "list_currency": "USD", "list_rate": 7.75, "mode": "test", "object": "Rate", - "rate": 6.76, "retail_currency": "USD", "retail_rate": 7.75, "service": "ParcelSelect", - "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 2, "percentile_97": 2, "percentile_99": 3}, "updated_at": - "2023-05-16T16:31:46Z"}]}' + "delivery_days": 1, "est_delivery_days": 1, "id": "rate_a9d48b6177524630829bdbd1c6d99cf9", + "list_currency": "USD", "list_rate": 34.15, "mode": "test", "object": "Rate", + "rate": 34.15, "retail_currency": "USD", "retail_rate": 39.1, "service": "Express", + "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "time_in_transit": + {"percentile_50": 2, "percentile_75": 2, "percentile_85": 3, "percentile_90": + 3, "percentile_95": 4, "percentile_97": 5, "percentile_99": 8}, "updated_at": + "2025-03-07T16:51:02Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": + 2, "id": "rate_43eb2dca7f5c44ca8d622f129f9b3eae", "list_currency": "USD", + "list_rate": 8.34, "mode": "test", "object": "Rate", "rate": 7.42, "retail_currency": + "USD", "retail_rate": 9.9, "service": "Priority", "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", + "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": + 2, "percentile_90": 3, "percentile_95": 3, "percentile_97": 3, "percentile_99": + 4}, "updated_at": "2025-03-07T16:51:02Z"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '2620' + - '1969' content-type: - application/json; charset=utf-8 - etag: - - W/"66d3b0dfe05fa21fa84f9353cf7108b1" expires: - '0' pragma: @@ -227,20 +194,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463aff2e7872f990027a8ba + - 6eaaf8fe67cb23f6e2aac23e000c3051 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.065101' + - '0.090788' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -260,53 +227,42 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_8acff0a4a916424da4e1f4f3fe072984/smartrate + uri: https://api.easypost.com/v2/shipments/shp_a4605012cda9465e92bade0b88927a75/smartrate response: body: string: '{"result": [{"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:46Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": - 2, "id": "rate_6c7ad12cb9a94561ac6cfe6a5fcf65bc", "list_currency": "USD", - "list_rate": 8.24, "mode": "test", "object": "Rate", "rate": 7.15, "retail_currency": - "USD", "retail_rate": 10.2, "service": "Priority", "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", - "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": - 2, "percentile_90": 2, "percentile_95": 2, "percentile_97": 3, "percentile_99": - 3}, "updated_at": "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:46Z", - "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 3, "est_delivery_days": 3, "id": "rate_a389d8d9c62541579fbd21669a223271", - "list_currency": "USD", "list_rate": 6.07, "mode": "test", "object": "Rate", - "rate": 6.07, "retail_currency": "USD", "retail_rate": 6.07, "service": "First", - "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 3, "percentile_97": 4, "percentile_99": 5}, "updated_at": - "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:46Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": null, "est_delivery_days": - null, "id": "rate_438469a9e1bc49188d85f5d3f8116fa8", "list_currency": "USD", - "list_rate": 31.25, "mode": "test", "object": "Rate", "rate": 31.25, "retail_currency": - "USD", "retail_rate": 35.8, "service": "Express", "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", + "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 3, "est_delivery_days": + 3, "id": "rate_5814100ba2084466be320ba396b61730", "list_currency": "USD", + "list_rate": 6.57, "mode": "test", "object": "Rate", "rate": 6.07, "retail_currency": + "USD", "retail_rate": 8.85, "service": "GroundAdvantage", "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "time_in_transit": {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": 2, "percentile_95": 3, "percentile_97": 3, "percentile_99": - 4}, "updated_at": "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:46Z", + 4}, "updated_at": "2025-03-07T16:51:02Z"}, {"carrier": "USPS", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 5, "est_delivery_days": 5, "id": "rate_a362cf2e07e942b7896c6967083a7ef7", - "list_currency": "USD", "list_rate": 7.75, "mode": "test", "object": "Rate", - "rate": 6.76, "retail_currency": "USD", "retail_rate": 7.75, "service": "ParcelSelect", - "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 2, "percentile_97": 2, "percentile_99": 3}, "updated_at": - "2023-05-16T16:31:46Z"}]}' + "delivery_days": 1, "est_delivery_days": 1, "id": "rate_a9d48b6177524630829bdbd1c6d99cf9", + "list_currency": "USD", "list_rate": 34.15, "mode": "test", "object": "Rate", + "rate": 34.15, "retail_currency": "USD", "retail_rate": 39.1, "service": "Express", + "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "time_in_transit": + {"percentile_50": 2, "percentile_75": 2, "percentile_85": 3, "percentile_90": + 3, "percentile_95": 4, "percentile_97": 5, "percentile_99": 8}, "updated_at": + "2025-03-07T16:51:02Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": + 2, "id": "rate_43eb2dca7f5c44ca8d622f129f9b3eae", "list_currency": "USD", + "list_rate": 8.34, "mode": "test", "object": "Rate", "rate": 7.42, "retail_currency": + "USD", "retail_rate": 9.9, "service": "Priority", "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", + "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": + 2, "percentile_90": 3, "percentile_95": 3, "percentile_97": 3, "percentile_99": + 4}, "updated_at": "2025-03-07T16:51:02Z"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '2620' + - '1969' content-type: - application/json; charset=utf-8 - etag: - - W/"66d3b0dfe05fa21fa84f9353cf7108b1" expires: - '0' pragma: @@ -324,20 +280,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463aff2e7872f990027a8cc + - 6eaaf8fe67cb23f6e2aac23e000c3066 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.073232' + - '0.107955' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -357,53 +313,42 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_8acff0a4a916424da4e1f4f3fe072984/smartrate + uri: https://api.easypost.com/v2/shipments/shp_a4605012cda9465e92bade0b88927a75/smartrate response: body: string: '{"result": [{"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:46Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": - 2, "id": "rate_6c7ad12cb9a94561ac6cfe6a5fcf65bc", "list_currency": "USD", - "list_rate": 8.24, "mode": "test", "object": "Rate", "rate": 7.15, "retail_currency": - "USD", "retail_rate": 10.2, "service": "Priority", "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", - "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": - 2, "percentile_90": 2, "percentile_95": 2, "percentile_97": 3, "percentile_99": - 3}, "updated_at": "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:46Z", - "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 3, "est_delivery_days": 3, "id": "rate_a389d8d9c62541579fbd21669a223271", - "list_currency": "USD", "list_rate": 6.07, "mode": "test", "object": "Rate", - "rate": 6.07, "retail_currency": "USD", "retail_rate": 6.07, "service": "First", - "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 3, "percentile_97": 4, "percentile_99": 5}, "updated_at": - "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:46Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": null, "est_delivery_days": - null, "id": "rate_438469a9e1bc49188d85f5d3f8116fa8", "list_currency": "USD", - "list_rate": 31.25, "mode": "test", "object": "Rate", "rate": 31.25, "retail_currency": - "USD", "retail_rate": 35.8, "service": "Express", "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", + "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 3, "est_delivery_days": + 3, "id": "rate_5814100ba2084466be320ba396b61730", "list_currency": "USD", + "list_rate": 6.57, "mode": "test", "object": "Rate", "rate": 6.07, "retail_currency": + "USD", "retail_rate": 8.85, "service": "GroundAdvantage", "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "time_in_transit": {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": 2, "percentile_95": 3, "percentile_97": 3, "percentile_99": - 4}, "updated_at": "2023-05-16T16:31:46Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:46Z", + 4}, "updated_at": "2025-03-07T16:51:02Z"}, {"carrier": "USPS", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 5, "est_delivery_days": 5, "id": "rate_a362cf2e07e942b7896c6967083a7ef7", - "list_currency": "USD", "list_rate": 7.75, "mode": "test", "object": "Rate", - "rate": 6.76, "retail_currency": "USD", "retail_rate": 7.75, "service": "ParcelSelect", - "shipment_id": "shp_8acff0a4a916424da4e1f4f3fe072984", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 2, "percentile_97": 2, "percentile_99": 3}, "updated_at": - "2023-05-16T16:31:46Z"}]}' + "delivery_days": 1, "est_delivery_days": 1, "id": "rate_a9d48b6177524630829bdbd1c6d99cf9", + "list_currency": "USD", "list_rate": 34.15, "mode": "test", "object": "Rate", + "rate": 34.15, "retail_currency": "USD", "retail_rate": 39.1, "service": "Express", + "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", "time_in_transit": + {"percentile_50": 2, "percentile_75": 2, "percentile_85": 3, "percentile_90": + 3, "percentile_95": 4, "percentile_97": 5, "percentile_99": 8}, "updated_at": + "2025-03-07T16:51:02Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "created_at": "2025-03-07T16:51:02Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": + 2, "id": "rate_43eb2dca7f5c44ca8d622f129f9b3eae", "list_currency": "USD", + "list_rate": 8.34, "mode": "test", "object": "Rate", "rate": 7.42, "retail_currency": + "USD", "retail_rate": 9.9, "service": "Priority", "shipment_id": "shp_a4605012cda9465e92bade0b88927a75", + "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": + 2, "percentile_90": 3, "percentile_95": 3, "percentile_97": 3, "percentile_99": + 4}, "updated_at": "2025-03-07T16:51:02Z"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '2620' + - '1969' content-type: - application/json; charset=utf-8 - etag: - - W/"66d3b0dfe05fa21fa84f9353cf7108b1" expires: - '0' pragma: @@ -421,20 +366,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463aff2e7872f990027a8d7 + - 6eaaf8fe67cb23f6e2aac23e000c3090 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.062884' + - '0.077064' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_one_call_buy_with_carbon_offset.yaml b/tests/cassettes/test_shipment_one_call_buy_with_carbon_offset.yaml deleted file mode 100644 index 9f6f14e6..00000000 --- a/tests/cassettes/test_shipment_one_call_buy_with_carbon_offset.yaml +++ /dev/null @@ -1,174 +0,0 @@ -interactions: -- request: - body: '{"shipment": {"to_address": {"name": "Jack Sparrow", "street1": "388 Townsend - St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", - "country": "US", "email": "test@example.com", "phone": "5555555555"}, "from_address": - {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", - "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": true}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '619' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/shipments - response: - body: - string: '{"created_at": "2023-05-16T16:31:51Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210341798", "updated_at": "2023-05-16T16:31:52Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_295de4abf40711edafa23cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:51+00:00", "updated_at": "2023-05-16T16:31:51+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_e5a793fe9a124c648c3662cbd17bcea1", - "object": "Parcel", "created_at": "2023-05-16T16:31:51Z", "updated_at": "2023-05-16T16:31:51Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_d38714fcfacc4e0ab75984034df12dd8", - "created_at": "2023-05-16T16:31:52Z", "updated_at": "2023-05-16T16:31:52Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:31:52Z", - "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/2c4a226f499f40e6b5c4a4267c03f126.png", - "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_5c754be4576347d79eb08ffeecc1ac4e", "object": - "Rate", "created_at": "2023-05-16T16:31:51Z", "updated_at": "2023-05-16T16:31:51Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_1f8bcc1d9de543d6b459de624fcccd3d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_08bdec380497414aa6a34af994adcd6a", - "object": "Rate", "created_at": "2023-05-16T16:31:51Z", "updated_at": "2023-05-16T16:31:51Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_1f8bcc1d9de543d6b459de624fcccd3d", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "carbon_offset": {"object": "CarbonOffset", "grams": 36, "price": "0.11", - "currency": "USD"}}, {"id": "rate_ca0accfe2fa84b32986f1d57deb0a7ec", "object": - "Rate", "created_at": "2023-05-16T16:31:51Z", "updated_at": "2023-05-16T16:31:51Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_1f8bcc1d9de543d6b459de624fcccd3d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_78cb414a7d0140bb95a64c7594673446", - "object": "Rate", "created_at": "2023-05-16T16:31:51Z", "updated_at": "2023-05-16T16:31:51Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_1f8bcc1d9de543d6b459de624fcccd3d", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}], "refund_status": null, - "scan_form": null, "selected_rate": {"id": "rate_08bdec380497414aa6a34af994adcd6a", - "object": "Rate", "created_at": "2023-05-16T16:31:52Z", "updated_at": "2023-05-16T16:31:52Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_1f8bcc1d9de543d6b459de624fcccd3d", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_04ee4a941e8e4a5588055b6c888a1e0a", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210341798", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T16:31:52Z", "updated_at": - "2023-05-16T16:31:52Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_1f8bcc1d9de543d6b459de624fcccd3d", "carrier": "USPS", - "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzA0ZWU0YTk0MWU4ZTRhNTU4ODA1NWI2Yzg4OGExZTBh"}, - "to_address": {"id": "adr_295b4f1df40711edaf963cecef1b359e", "object": "Address", - "created_at": "2023-05-16T16:31:51+00:00", "updated_at": "2023-05-16T16:31:51+00:00", - "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", - "country": "US", "phone": "", "email": "", "mode": "test", - "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": - null, "verifications": {"zip4": {"success": true, "errors": [], "details": - null}, "delivery": {"success": true, "errors": [], "details": {"latitude": - 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_295de4abf40711edafa23cecef1b359e", - "object": "Address", "created_at": "2023-05-16T16:31:51+00:00", "updated_at": - "2023-05-16T16:31:51+00:00", "name": "Elizabeth Swan", "company": null, "street1": - "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", - "zip": "90277", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_295b4f1df40711edaf963cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:51+00:00", "updated_at": "2023-05-16T16:31:51+00:00", "name": - "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": - {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": - true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, - "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", - "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, - {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}, {"object": "Fee", "type": "CarbonOffsetFee", "amount": - "0.11000", "charged": true, "refunded": false}], "id": "shp_1f8bcc1d9de543d6b459de624fcccd3d", - "object": "Shipment"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '7418' - content-type: - - application/json; charset=utf-8 - etag: - - W/"c277b8bce9e1623771770736fb2f029a" - expires: - - '0' - location: - - /api/v2/shipments/shp_1f8bcc1d9de543d6b459de624fcccd3d - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e76463aff7e7872f9f0027aa47 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb11nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '1.190956' - x-version-label: - - easypost-202305152249-750e1e7d95-master - x-xss-protection: - - 1; mode=block - status: - code: 201 - message: Created -version: 1 diff --git a/tests/cassettes/test_shipment_recommend_ship_date.yaml b/tests/cassettes/test_shipment_recommend_ship_date.yaml new file mode 100644 index 00000000..4f239139 --- /dev/null +++ b/tests/cassettes/test_shipment_recommend_ship_date.yaml @@ -0,0 +1,224 @@ +interactions: +- request: + body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '496' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments + response: + body: + string: '{"id": "shp_bde92a511b4f4ed68a381c2806b75138", "created_at": "2025-03-07T16:46:32Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:46:32Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_b9c6ead5fb7311efa6cfac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:32+00:00", "updated_at": "2025-03-07T16:46:32+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_6f513f92240a45379cc5bf8a5744bbe6", + "object": "Parcel", "created_at": "2025-03-07T16:46:32Z", "updated_at": "2025-03-07T16:46:32Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_0d02d5e5b0b44359bc223b4ea5173874", + "object": "Rate", "created_at": "2025-03-07T16:46:33Z", "updated_at": "2025-03-07T16:46:33Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_bde92a511b4f4ed68a381c2806b75138", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d79cc46dd49548bcae70d13190fba9f9", + "object": "Rate", "created_at": "2025-03-07T16:46:33Z", "updated_at": "2025-03-07T16:46:33Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_bde92a511b4f4ed68a381c2806b75138", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_1e792efb0e784006b58b540a6ec0ae39", + "object": "Rate", "created_at": "2025-03-07T16:46:33Z", "updated_at": "2025-03-07T16:46:33Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_bde92a511b4f4ed68a381c2806b75138", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b9c4d560fb7311ef816dac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:32+00:00", "updated_at": + "2025-03-07T16:46:32+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b9c6ead5fb7311efa6cfac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:32+00:00", "updated_at": "2025-03-07T16:46:32+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b9c4d560fb7311ef816dac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:32+00:00", "updated_at": "2025-03-07T16:46:32+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "forms": [], "fees": [], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '4325' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/shipments/shp_bde92a511b4f4ed68a381c2806b75138 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6eaaf8fc67cb22e8e2aabd7e000af2fc + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb54nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 + x-runtime: + - '0.266158' + x-version-label: + - easypost-202503070040-19f686ce32-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/shipments/shp_bde92a511b4f4ed68a381c2806b75138/smartrate/precision_shipping?desired_delivery_date=2025-03-08 + response: + body: + string: '{"rates": [{"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": + 3, "percentile_75": 3, "percentile_85": 4, "percentile_90": 4, "percentile_95": + 5, "percentile_97": 6, "percentile_99": 8}, "delivery_date_confidence": 0.38, + "desired_delivery_date": "2025-03-08", "estimated_transit_days": 1, "ship_on_date": + "2025-03-07"}, "rate": {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "created_at": "2025-03-07T16:46:33Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 1, "est_delivery_days": + 1, "id": "rate_0d02d5e5b0b44359bc223b4ea5173874", "list_currency": "USD", + "list_rate": 34.15, "mode": "test", "object": "Rate", "rate": 34.15, "retail_currency": + "USD", "retail_rate": 39.1, "service": "Express", "shipment_id": "shp_bde92a511b4f4ed68a381c2806b75138", + "updated_at": "2025-03-07T16:46:33Z"}}, {"easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 4, "percentile_85": + 5, "percentile_90": 5, "percentile_95": 6, "percentile_97": 7, "percentile_99": + 10}, "delivery_date_confidence": 0.04, "desired_delivery_date": "2025-03-08", + "estimated_transit_days": 1, "ship_on_date": "2025-03-07"}, "rate": {"carrier": + "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": + "2025-03-07T16:46:33Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": + false, "delivery_days": 2, "est_delivery_days": 2, "id": "rate_d79cc46dd49548bcae70d13190fba9f9", + "list_currency": "USD", "list_rate": 8.34, "mode": "test", "object": "Rate", + "rate": 7.42, "retail_currency": "USD", "retail_rate": 9.9, "service": "Priority", + "shipment_id": "shp_bde92a511b4f4ed68a381c2806b75138", "updated_at": "2025-03-07T16:46:33Z"}}, + {"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": 4, + "percentile_75": 4, "percentile_85": 5, "percentile_90": 5, "percentile_95": + 6, "percentile_97": 7, "percentile_99": 10}, "delivery_date_confidence": 0.03, + "desired_delivery_date": "2025-03-08", "estimated_transit_days": 1, "ship_on_date": + "2025-03-07"}, "rate": {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "created_at": "2025-03-07T16:46:33Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 3, "est_delivery_days": + 3, "id": "rate_1e792efb0e784006b58b540a6ec0ae39", "list_currency": "USD", + "list_rate": 6.57, "mode": "test", "object": "Rate", "rate": 6.07, "retail_currency": + "USD", "retail_rate": 8.85, "service": "GroundAdvantage", "shipment_id": "shp_bde92a511b4f4ed68a381c2806b75138", + "updated_at": "2025-03-07T16:46:33Z"}}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2471' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6eaaf8fc67cb22e9e2aabd7e000af352 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb32nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 + x-runtime: + - '0.108576' + x-version-label: + - easypost-202503070040-19f686ce32-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_shipment_refund.yaml b/tests/cassettes/test_shipment_refund.yaml index 23675619..fc18164f 100644 --- a/tests/cassettes/test_shipment_refund.yaml +++ b/tests/cassettes/test_shipment_refund.yaml @@ -6,8 +6,8 @@ interactions: {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' + 15.4}, "service": "GroundAdvantage", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], + "carrier": "USPS"}}' headers: Accept: - '*/*' @@ -16,7 +16,7 @@ interactions: Connection: - keep-alive Content-Length: - - '620' + - '606' Content-Type: - application/json authorization: @@ -27,88 +27,83 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:37Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210341637", "updated_at": "2023-05-16T16:31:38Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_212e108af40711ed987a3cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:37+00:00", "updated_at": "2023-05-16T16:31:37+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_cab2478d70534c868c4314d19bda6d45", - "object": "Parcel", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", + string: '{"id": "shp_700d2963c43b4847883c955eeb846b13", "created_at": "2025-03-07T16:46:25Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505688", "updated_at": + "2025-03-07T16:46:26Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_b5548f4dfb7311efa435ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:25+00:00", "updated_at": + "2025-03-07T16:46:25+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_ebc830b06aa54635b64e0307cdac29f1", "object": + "Parcel", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_ec37009e709e4af78f542a4ed7f76df1", - "created_at": "2023-05-16T16:31:38Z", "updated_at": "2023-05-16T16:31:38Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:31:38Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_300a3cd83e644301a0327659610ff50d", + "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:26Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:25Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/58a169b16dbe4dc699f33f62958eff9d.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e85c1ebac06b434b938dae67e732e189ff.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_3da547865af7446dbfda00e700aa2b04", "object": - "Rate", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_69b5db7fe34b4e12b03ac94bd48ed7a5", - "object": "Rate", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_3370f697867648089678702603133fec", - "object": "Rate", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_ec2e8704ce644a2b8c6ed97abc870e88", "object": "Rate", "created_at": - "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_3370f697867648089678702603133fec", - "object": "Rate", "created_at": "2023-05-16T16:31:38Z", "updated_at": "2023-05-16T16:31:38Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_ea5f9707a5a942c785a32081bd79e1c4", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210341637", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T16:31:38Z", "updated_at": - "2023-05-16T16:31:38Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_6202abb22874490ab3631a413493bdeb", "carrier": "USPS", + null}, "rates": [{"id": "rate_0f20bf94b65c4fb1b95966ec43487695", "object": + "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c9ead7bfdcff4e33b61bffc577805e01", + "object": "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e3057ccdd9804995a358d91d4595bcf6", + "object": "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": {"id": "rate_e3057ccdd9804995a358d91d4595bcf6", "object": + "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_f42bc0761c284d149c58e52307d33810", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505688", + "status": "unknown", "status_detail": "unknown", "created_at": "2025-03-07T16:46:26Z", + "updated_at": "2025-03-07T16:46:26Z", "signed_by": null, "weight": null, "est_delivery_date": + null, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier": "USPS", "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrX2VhNWY5NzA3YTVhOTQyYzc4NWEzMjA4MWJkNzllMWM0"}, - "to_address": {"id": "adr_212bc9d7f40711edb3ccac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T16:31:37+00:00", "updated_at": "2023-05-16T16:31:37+00:00", + "https://track.easypost.com/djE6dHJrX2Y0MmJjMDc2MWMyODRkMTQ5YzU4ZTUyMzA3ZDMzODEw"}, + "to_address": {"id": "adr_b552c393fb7311ef9ea3ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:46:25+00:00", "updated_at": "2025-03-07T16:46:25+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", + "street2": "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_212e108af40711ed987a3cecef1b359e", - "object": "Address", "created_at": "2023-05-16T16:31:37+00:00", "updated_at": - "2023-05-16T16:31:37+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_b5548f4dfb7311efa435ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:25+00:00", "updated_at": + "2025-03-07T16:46:25+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_212bc9d7f40711edb3ccac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:37+00:00", "updated_at": "2023-05-16T16:31:37+00:00", "name": + "adr_b552c393fb7311ef9ea3ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:25+00:00", "updated_at": "2025-03-07T16:46:25+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": + "", "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": @@ -116,21 +111,18 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_6202abb22874490ab3631a413493bdeb", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6985' + - '6456' content-type: - application/json; charset=utf-8 - etag: - - W/"7d1fb7a8cce5a673f7ab19a2dc015d0d" expires: - '0' location: - - /api/v2/shipments/shp_6202abb22874490ab3631a413493bdeb + - /api/v2/shipments/shp_700d2963c43b4847883c955eeb846b13 pragma: - no-cache referrer-policy: @@ -141,25 +133,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e66463afe9e7872f5f0027a564 + - 6eaaf8fa67cb22e1e2aabd5a000ae8ef x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '1.174495' + - '0.863720' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -183,77 +177,72 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/shipments/shp_6202abb22874490ab3631a413493bdeb/refund + uri: https://api.easypost.com/v2/shipments/shp_700d2963c43b4847883c955eeb846b13/refund response: body: - string: '{"created_at": "2023-05-16T16:31:37Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210341637", "updated_at": "2023-05-16T16:31:39Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_212e108af40711ed987a3cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:37+00:00", "updated_at": "2023-05-16T16:31:37+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_cab2478d70534c868c4314d19bda6d45", - "object": "Parcel", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", + string: '{"id": "shp_700d2963c43b4847883c955eeb846b13", "created_at": "2025-03-07T16:46:25Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": "9400100208303109505688", "updated_at": + "2025-03-07T16:46:26Z", "batch_id": null, "batch_status": null, "batch_message": + null, "customs_info": null, "from_address": {"id": "adr_b5548f4dfb7311efa435ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:25+00:00", "updated_at": + "2025-03-07T16:46:25+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "insurance": null, "order_id": + null, "parcel": {"id": "prcl_ebc830b06aa54635b64e0307cdac29f1", "object": + "Parcel", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_ec37009e709e4af78f542a4ed7f76df1", - "created_at": "2023-05-16T16:31:38Z", "updated_at": "2023-05-16T16:31:38Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:31:38Z", + 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_300a3cd83e644301a0327659610ff50d", + "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:26Z", + "date_advance": 0, "integrated_form": "none", "label_date": "2025-03-07T16:46:25Z", "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/58a169b16dbe4dc699f33f62958eff9d.png", + "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20250307/e85c1ebac06b434b938dae67e732e189ff.png", "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_3da547865af7446dbfda00e700aa2b04", "object": - "Rate", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_69b5db7fe34b4e12b03ac94bd48ed7a5", - "object": "Rate", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_3370f697867648089678702603133fec", - "object": "Rate", "created_at": "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_ec2e8704ce644a2b8c6ed97abc870e88", "object": "Rate", "created_at": - "2023-05-16T16:31:37Z", "updated_at": "2023-05-16T16:31:37Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": "submitted", "scan_form": null, "selected_rate": {"id": "rate_3370f697867648089678702603133fec", - "object": "Rate", "created_at": "2023-05-16T16:31:38Z", "updated_at": "2023-05-16T16:31:38Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6202abb22874490ab3631a413493bdeb", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_ea5f9707a5a942c785a32081bd79e1c4", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210341637", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:31:38Z", "updated_at": - "2023-05-16T16:31:38Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:31:38Z", "shipment_id": "shp_6202abb22874490ab3631a413493bdeb", + null}, "rates": [{"id": "rate_0f20bf94b65c4fb1b95966ec43487695", "object": + "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c9ead7bfdcff4e33b61bffc577805e01", + "object": "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e3057ccdd9804995a358d91d4595bcf6", + "object": "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": "submitted", "scan_form": + null, "selected_rate": {"id": "rate_e3057ccdd9804995a358d91d4595bcf6", "object": + "Rate", "created_at": "2025-03-07T16:46:25Z", "updated_at": "2025-03-07T16:46:25Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, "tracker": {"id": "trk_f42bc0761c284d149c58e52307d33810", + "object": "Tracker", "mode": "test", "tracking_code": "9400100208303109505688", + "status": "pre_transit", "status_detail": "status_update", "created_at": "2025-03-07T16:46:26Z", + "updated_at": "2025-03-07T16:46:26Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-07T16:46:26Z", "shipment_id": "shp_700d2963c43b4847883c955eeb846b13", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:31:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T16:46:26Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:08:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-08T05:23:26Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, @@ -261,9 +250,9 @@ interactions: {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrX2VhNWY5NzA3YTVhOTQyYzc4NWEzMjA4MWJkNzllMWM0"}, - "to_address": {"id": "adr_212bc9d7f40711edb3ccac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T16:31:37+00:00", "updated_at": "2023-05-16T16:31:37+00:00", + null}, "public_url": "https://track.easypost.com/djE6dHJrX2Y0MmJjMDc2MWMyODRkMTQ5YzU4ZTUyMzA3ZDMzODEw"}, + "to_address": {"id": "adr_b552c393fb7311ef9ea3ac1f6bc539ae", "object": "Address", + "created_at": "2025-03-07T16:46:25+00:00", "updated_at": "2025-03-07T16:46:25+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", @@ -271,15 +260,15 @@ interactions: null, "verifications": {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_212e108af40711ed987a3cecef1b359e", - "object": "Address", "created_at": "2023-05-16T16:31:37+00:00", "updated_at": - "2023-05-16T16:31:37+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "usps_zone": 4, "return_address": {"id": "adr_b5548f4dfb7311efa435ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:25+00:00", "updated_at": + "2025-03-07T16:46:25+00:00", "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_212bc9d7f40711edb3ccac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:37+00:00", "updated_at": "2023-05-16T16:31:37+00:00", "name": + "adr_b552c393fb7311ef9ea3ac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:25+00:00", "updated_at": "2025-03-07T16:46:25+00:00", "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": @@ -289,17 +278,14 @@ interactions: "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_6202abb22874490ab3631a413493bdeb", "object": - "Shipment"}' + "refunded": false}], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '8126' + - '7593' content-type: - application/json; charset=utf-8 - etag: - - W/"b1ea0fb047e0897fd342b59d1ac03a6a" expires: - '0' pragma: @@ -317,20 +303,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e66463afeae7872f5f0027a5b7 + - 6eaaf8fa67cb22e2e2aabd5a000aea47 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.256755' + - '0.174085' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_regenerate_rates.yaml b/tests/cassettes/test_shipment_regenerate_rates.yaml index bda334e3..9fbe036a 100644 --- a/tests/cassettes/test_shipment_regenerate_rates.yaml +++ b/tests/cassettes/test_shipment_regenerate_rates.yaml @@ -11,7 +11,7 @@ interactions: "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": - "PNG", "invoice_number": "123"}, "reference": "123"}, "carbon_offset": false}' + "PNG", "invoice_number": "123"}, "reference": "123"}}' headers: Accept: - '*/*' @@ -20,7 +20,7 @@ interactions: Connection: - keep-alive Content-Length: - - '978' + - '954' Content-Type: - application/json authorization: @@ -31,106 +31,84 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:33Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": null, "updated_at": - "2023-05-16T16:31:33Z", "batch_id": null, "batch_status": null, "batch_message": - null, "customs_info": {"id": "cstinfo_cb037cb85ae04a368a1ab12cf0ded04b", "object": - "CustomsInfo", "created_at": "2023-05-16T16:31:33Z", "updated_at": "2023-05-16T16:31:33Z", - "contents_explanation": "", "contents_type": "merchandise", "customs_certify": - true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": - "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_9d18ffd496b4454085744403dacbb731", - "object": "CustomsItem", "created_at": "2023-05-16T16:31:33Z", "updated_at": - "2023-05-16T16:31:33Z", "description": "Sweet shirts", "hs_tariff_number": - "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": - 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, - "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": - "adr_1e63fd6ef40711ed977e3cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:33+00:00", "updated_at": "2023-05-16T16:31:33+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_322d89bfe10e4874a31e20e3a001be24", "created_at": "2025-03-07T16:46:21Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-07T16:46:21Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_23612c8c72b3439db1979957ebba631d", + "object": "CustomsInfo", "created_at": "2025-03-07T16:46:21Z", "updated_at": + "2025-03-07T16:46:21Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_a4293957af1b4faf9eaadfe3579c965c", "object": "CustomsItem", + "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_b2bd42b3fb7311ef9cbaac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_93075f511bbd4bf98428447aa0fcc196", - "object": "Parcel", "created_at": "2023-05-16T16:31:33Z", "updated_at": "2023-05-16T16:31:33Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_8b5c2fafd17a42d6a327469914e121b5", + "object": "Parcel", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_5d07b0deeafc48d9a1584bd1faf635bb", - "object": "Rate", "created_at": "2023-05-16T16:31:33Z", "updated_at": "2023-05-16T16:31:33Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_36f48d20a171432bb5cf7f0403cafd52", - "object": "Rate", "created_at": "2023-05-16T16:31:33Z", "updated_at": "2023-05-16T16:31:33Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_d42bdaff54064c12a24c4ceaa133c72b", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_322d89bfe10e4874a31e20e3a001be24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_8ee656e6c49244abb5fefeda5567cea9", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_c91b7d23f31547fd95d4bad7b224c2e5", - "object": "Rate", "created_at": "2023-05-16T16:31:33Z", "updated_at": "2023-05-16T16:31:33Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_ab12ec44fc244286b7473112aa3dd086", - "object": "Rate", "created_at": "2023-05-16T16:31:33Z", "updated_at": "2023-05-16T16:31:33Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_1e61ee30f40711ed977d3cecef1b359e", "object": - "Address", "created_at": "2023-05-16T16:31:33+00:00", "updated_at": "2023-05-16T16:31:33+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_1e63fd6ef40711ed977e3cecef1b359e", - "object": "Address", "created_at": "2023-05-16T16:31:33+00:00", "updated_at": - "2023-05-16T16:31:33+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_322d89bfe10e4874a31e20e3a001be24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_064e47d5551944c1929fe58c375c579c", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_322d89bfe10e4874a31e20e3a001be24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b2ba9c36fb7311efa275ac1f6bc539aa", + "object": "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": + "2025-03-07T16:46:21+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_1e61ee30f40711ed977d3cecef1b359e", "object": "Address", "created_at": - "2023-05-16T16:31:33+00:00", "updated_at": "2023-05-16T16:31:33+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b2bd42b3fb7311ef9cbaac1f6bc539ae", "object": "Address", "created_at": + "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b2ba9c36fb7311efa275ac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:21+00:00", "updated_at": "2025-03-07T16:46:21+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_e3aada19b74447feb916aadc8f2f6a75", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6722' + - '5160' content-type: - application/json; charset=utf-8 - etag: - - W/"8ae70439c39f9406f936c2d11e1b1926" expires: - '0' location: - - /api/v2/shipments/shp_e3aada19b74447feb916aadc8f2f6a75 + - /api/v2/shipments/shp_322d89bfe10e4874a31e20e3a001be24 pragma: - no-cache referrer-policy: @@ -146,27 +124,27 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afe4e7872f5c0027a3d4 + - 6eaaf90167cb22dce2aaba23000ae1cb x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.509197' + - '0.221309' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"carbon_offset": false}' + body: '{}' headers: Accept: - '*/*' @@ -175,7 +153,7 @@ interactions: Connection: - keep-alive Content-Length: - - '24' + - '2' Content-Type: - application/json authorization: @@ -183,46 +161,38 @@ interactions: user-agent: - method: POST - uri: https://api.easypost.com/v2/shipments/shp_e3aada19b74447feb916aadc8f2f6a75/rerate + uri: https://api.easypost.com/v2/shipments/shp_322d89bfe10e4874a31e20e3a001be24/rerate response: body: - string: '{"rates": [{"id": "rate_fbfec1e3dad34f9f97ab9fd3f468a372", "object": - "Rate", "created_at": "2023-05-16T16:31:33Z", "updated_at": "2023-05-16T16:31:33Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_21f7b667cfec494e90a425c7269ec700", - "object": "Rate", "created_at": "2023-05-16T16:31:34Z", "updated_at": "2023-05-16T16:31:34Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_9dc82136244b4e5cb9d2243e8600ee22", - "object": "Rate", "created_at": "2023-05-16T16:31:34Z", "updated_at": "2023-05-16T16:31:34Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + string: '{"rates": [{"id": "rate_8c859e5dd7c24f8686ec63c1029d2c75", "object": + "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_fb0fa10dab7e40548d6afe3a8928ed6b", - "object": "Rate", "created_at": "2023-05-16T16:31:34Z", "updated_at": "2023-05-16T16:31:34Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_e3aada19b74447feb916aadc8f2f6a75", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}]}' + 2, "shipment_id": "shp_322d89bfe10e4874a31e20e3a001be24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6174a768b0a54242b201e7d09bd5ef1b", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_322d89bfe10e4874a31e20e3a001be24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_3a818c29492a46f29c61df1c4f9d7938", + "object": "Rate", "created_at": "2025-03-07T16:46:21Z", "updated_at": "2025-03-07T16:46:21Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_322d89bfe10e4874a31e20e3a001be24", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '2165' + - '1628' content-type: - application/json; charset=utf-8 - etag: - - W/"25c4abf28d19adaa5881b840eb3951e0" expires: - '0' pragma: @@ -235,25 +205,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afe5e7872f5c0027a403 + - 6eaaf90167cb22dde2aaba23000ae261 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.457187' + - '0.230324' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_rerate_with_carbon_offset.yaml b/tests/cassettes/test_shipment_rerate_with_carbon_offset.yaml deleted file mode 100644 index 37eac2ac..00000000 --- a/tests/cassettes/test_shipment_rerate_with_carbon_offset.yaml +++ /dev/null @@ -1,267 +0,0 @@ -interactions: -- request: - body: '{"shipment": {"to_address": {"name": "Jack Sparrow", "street1": "388 Townsend - St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", - "country": "US", "email": "test@example.com", "phone": "5555555555"}, "from_address": - {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", - "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", - "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}, "service": "First", "carrier_accounts": ["ca_b25657e9896e4d63ac8151ac346ac41e"], - "carrier": "USPS"}, "carbon_offset": false}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '620' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/shipments - response: - body: - string: '{"created_at": "2023-05-16T16:31:53Z", "is_return": false, "messages": - [], "mode": "test", "options": {"currency": "USD", "payment": {"type": "SENDER"}, - "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - "9400100104262210341804", "updated_at": "2023-05-16T16:31:54Z", "batch_id": - null, "batch_status": null, "batch_message": null, "customs_info": null, "from_address": - {"id": "adr_2a5c498df40711ed849eac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:53+00:00", "updated_at": "2023-05-16T16:31:53+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_3a69344709934ca5bcc12e5507b37277", - "object": "Parcel", "created_at": "2023-05-16T16:31:53Z", "updated_at": "2023-05-16T16:31:53Z", - "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": {"object": "PostageLabel", "id": "pl_35eefc60efb146c8896b0f73bcd9b198", - "created_at": "2023-05-16T16:31:53Z", "updated_at": "2023-05-16T16:31:53Z", - "date_advance": 0, "integrated_form": "none", "label_date": "2023-05-16T16:31:53Z", - "label_resolution": 300, "label_size": "4x6", "label_type": "default", "label_file_type": - "image/png", "label_url": "https://easypost-files.s3.us-west-2.amazonaws.com/files/postage_label/20230516/c7a7f4955160422f9ef1bbfdb2128f78.png", - "label_pdf_url": null, "label_zpl_url": null, "label_epl2_url": null, "label_file": - null}, "rates": [{"id": "rate_0bc6874b05f146569089f384d2b23cb9", "object": - "Rate", "created_at": "2023-05-16T16:31:53Z", "updated_at": "2023-05-16T16:31:53Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d11d3de41fc04d77aa782472093e1112", - "object": "Rate", "created_at": "2023-05-16T16:31:53Z", "updated_at": "2023-05-16T16:31:53Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_4bf1f08a8525414da799cee80d190324", - "object": "Rate", "created_at": "2023-05-16T16:31:53Z", "updated_at": "2023-05-16T16:31:53Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_24d2d369e6714178815638bcb5eba958", - "object": "Rate", "created_at": "2023-05-16T16:31:53Z", "updated_at": "2023-05-16T16:31:53Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": {"id": "rate_24d2d369e6714178815638bcb5eba958", - "object": "Rate", "created_at": "2023-05-16T16:31:53Z", "updated_at": "2023-05-16T16:31:53Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - "tracker": {"id": "trk_33b91297097d4ad28fe0207dae34fca5", "object": "Tracker", - "mode": "test", "tracking_code": "9400100104262210341804", "status": "unknown", - "status_detail": "unknown", "created_at": "2023-05-16T16:31:54Z", "updated_at": - "2023-05-16T16:31:54Z", "signed_by": null, "weight": null, "est_delivery_date": - null, "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier": "USPS", - "tracking_details": [], "fees": [], "carrier_detail": null, "public_url": - "https://track.easypost.com/djE6dHJrXzMzYjkxMjk3MDk3ZDRhZDI4ZmUwMjA3ZGFlMzRmY2E1"}, - "to_address": {"id": "adr_2a54856ef40711ed8ed1ac1f6bc7b362", "object": "Address", - "created_at": "2023-05-16T16:31:53+00:00", "updated_at": "2023-05-16T16:31:53+00:00", - "name": "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", - "street2": null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", - "country": "US", "phone": "", "email": "", "mode": "test", - "carrier_facility": null, "residential": true, "federal_tax_id": null, "state_tax_id": - null, "verifications": {"zip4": {"success": true, "errors": [], "details": - null}, "delivery": {"success": true, "errors": [], "details": {"latitude": - 37.77551, "longitude": -122.39697, "time_zone": "America/Los_Angeles"}}}}, - "usps_zone": 4, "return_address": {"id": "adr_2a5c498df40711ed849eac1f6bc7bdc6", - "object": "Address", "created_at": "2023-05-16T16:31:53+00:00", "updated_at": - "2023-05-16T16:31:53+00:00", "name": "Elizabeth Swan", "company": null, "street1": - "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", - "zip": "90277", "country": "US", "phone": "", "email": "", - "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_2a54856ef40711ed8ed1ac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:53+00:00", "updated_at": "2023-05-16T16:31:53+00:00", "name": - "JACK SPARROW", "company": null, "street1": "388 TOWNSEND ST APT 20", "street2": - null, "city": "SAN FRANCISCO", "state": "CA", "zip": "94107-1670", "country": - "US", "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": true, "federal_tax_id": null, "state_tax_id": null, "verifications": - {"zip4": {"success": true, "errors": [], "details": null}, "delivery": {"success": - true, "errors": [], "details": {"latitude": 37.77551, "longitude": -122.39697, - "time_zone": "America/Los_Angeles"}}}}, "forms": [], "fees": [{"object": "Fee", - "type": "LabelFee", "amount": "0.00000", "charged": true, "refunded": false}, - {"object": "Fee", "type": "PostageFee", "amount": "6.07000", "charged": true, - "refunded": false}], "id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "object": - "Shipment"}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '6985' - content-type: - - application/json; charset=utf-8 - etag: - - W/"450beaa62927e4b5a2dad346ce037b41" - expires: - - '0' - location: - - /api/v2/shipments/shp_8d961782f9174b70a46c6fe4b179e4b1 - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e46463aff9e7872fa00027aac1 - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb4nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '1.098016' - x-version-label: - - easypost-202305152249-750e1e7d95-master - x-xss-protection: - - 1; mode=block - status: - code: 201 - message: Created -- request: - body: '{"carbon_offset": true}' - headers: - Accept: - - '*/*' - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - Content-Length: - - '23' - Content-Type: - - application/json - authorization: - - - user-agent: - - - method: POST - uri: https://api.easypost.com/v2/shipments/shp_8d961782f9174b70a46c6fe4b179e4b1/rerate - response: - body: - string: '{"rates": [{"id": "rate_a411932ec0334e78bbac416c4017126c", "object": - "Rate", "created_at": "2023-05-16T16:31:54Z", "updated_at": "2023-05-16T16:31:54Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_e51fe98ddad24bc691dfefc3b8f17542", - "object": "Rate", "created_at": "2023-05-16T16:31:54Z", "updated_at": "2023-05-16T16:31:54Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_69c3ce65750a4b1c836261c78240142c", - "object": "Rate", "created_at": "2023-05-16T16:31:54Z", "updated_at": "2023-05-16T16:31:54Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "carbon_offset": {"object": "CarbonOffset", - "grams": 36, "price": "0.11", "currency": "USD"}}, {"id": "rate_6e884b0a491740e383696f4e3e5283a3", - "object": "Rate", "created_at": "2023-05-16T16:31:54Z", "updated_at": "2023-05-16T16:31:54Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_8d961782f9174b70a46c6fe4b179e4b1", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "carbon_offset": {"object": "CarbonOffset", "grams": 36, "price": "0.11", - "currency": "USD"}}]}' - headers: - cache-control: - - private, no-cache, no-store - content-length: - - '2505' - content-type: - - application/json; charset=utf-8 - etag: - - W/"25ea8d80d35ac6ad10d1a943f445197e" - expires: - - '0' - pragma: - - no-cache - referrer-policy: - - strict-origin-when-cross-origin - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - transfer-encoding: - - chunked - x-backend: - - easypost - x-content-type-options: - - nosniff - x-download-options: - - noopen - x-ep-request-uuid: - - 23bee7e46463affae7872fa00027ab3a - x-frame-options: - - SAMEORIGIN - x-node: - - bigweb6nuq - x-permitted-cross-domain-policies: - - none - x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 - x-runtime: - - '0.364553' - x-version-label: - - easypost-202305152249-750e1e7d95-master - x-xss-protection: - - 1; mode=block - status: - code: 200 - message: OK -version: 1 diff --git a/tests/cassettes/test_shipment_retrieve.yaml b/tests/cassettes/test_shipment_retrieve.yaml index 9ab175d2..a7ef7677 100644 --- a/tests/cassettes/test_shipment_retrieve.yaml +++ b/tests/cassettes/test_shipment_retrieve.yaml @@ -11,7 +11,7 @@ interactions: "", "restriction_type": "none", "non_delivery_option": "return", "customs_items": [{"description": "Sweet shirts", "quantity": 2, "weight": 11, "value": 23.25, "hs_tariff_number": "654321", "origin_country": "US"}]}, "options": {"label_format": - "PNG", "invoice_number": "123"}, "reference": "123"}, "carbon_offset": false}' + "PNG", "invoice_number": "123"}, "reference": "123"}}' headers: Accept: - '*/*' @@ -20,7 +20,7 @@ interactions: Connection: - keep-alive Content-Length: - - '978' + - '954' Content-Type: - application/json authorization: @@ -31,106 +31,84 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:27Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": null, "updated_at": - "2023-05-16T16:31:28Z", "batch_id": null, "batch_status": null, "batch_message": - null, "customs_info": {"id": "cstinfo_4c6a23020e1c4ec18cdabeb6000f7f5a", "object": - "CustomsInfo", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", - "contents_explanation": "", "contents_type": "merchandise", "customs_certify": - true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": - "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_806ff0bfa2654a8d8563359d19179278", - "object": "CustomsItem", "created_at": "2023-05-16T16:31:27Z", "updated_at": - "2023-05-16T16:31:27Z", "description": "Sweet shirts", "hs_tariff_number": - "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": - 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, - "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": - "adr_1b19a234f40711edb20cac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:27+00:00", "updated_at": "2023-05-16T16:31:27+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_8412b33c1ad042049c1f2db46077cad2", "created_at": "2025-03-07T16:46:17Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-07T16:46:17Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_ea932391af43411a995dd3e2893dac05", + "object": "CustomsInfo", "created_at": "2025-03-07T16:46:17Z", "updated_at": + "2025-03-07T16:46:17Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_2ce8555331ac4236803a959dcbbeae51", "object": "CustomsItem", + "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_b0b6f50dfb7311efa17aac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_92d97082fce64f86a3c2aa2543f910c0", - "object": "Parcel", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_089c8b364e6842ffb142492fe5462cd8", + "object": "Parcel", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_74e203ebcb3e4d8faf99eab218045e6f", - "object": "Rate", "created_at": "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_52878c61264945f0853ffa301bc19884", "object": "Rate", "created_at": - "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_aa08f13d651a4baa8a18df1d6a0c59e2", "object": "Rate", "created_at": - "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_5e09427dd35a446dbbc0f6174842dcb7", "object": "Rate", "created_at": - "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_1b17a53bf40711ed8583ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:31:27+00:00", "updated_at": "2023-05-16T16:31:27+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_1b19a234f40711edb20cac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T16:31:27+00:00", "updated_at": - "2023-05-16T16:31:27+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_0e488701dc6a4037bd8c91d8de68e17f", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_8412b33c1ad042049c1f2db46077cad2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e68f89d1b3f141a5ac4d3578c145d47e", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_8412b33c1ad042049c1f2db46077cad2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d4470be0a8b14ea7aa394bef22db9d1f", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_8412b33c1ad042049c1f2db46077cad2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b0b3e045fb7311ef9bbeac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": + "2025-03-07T16:46:17+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_1b17a53bf40711ed8583ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:27+00:00", "updated_at": "2023-05-16T16:31:27+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b0b6f50dfb7311efa17aac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b0b3e045fb7311ef9bbeac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_b8f77e80448b4f3392c83ae84ade1cc4", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6722' + - '5160' content-type: - application/json; charset=utf-8 - etag: - - W/"a9928691f612582e24e0be72dcf6a2b9" expires: - '0' location: - - /api/v2/shipments/shp_b8f77e80448b4f3392c83ae84ade1cc4 + - /api/v2/shipments/shp_8412b33c1ad042049c1f2db46077cad2 pragma: - no-cache referrer-policy: @@ -146,20 +124,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e36463afdfe7872f580027a20c + - 6eaaf90167cb22d9e2aaba1f000adcb1 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.600690' + - '0.252824' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -179,105 +157,83 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_b8f77e80448b4f3392c83ae84ade1cc4 + uri: https://api.easypost.com/v2/shipments/shp_8412b33c1ad042049c1f2db46077cad2 response: body: - string: '{"created_at": "2023-05-16T16:31:27Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "shipment.customs_info.customs_items.0.code: - field required"}], "mode": "test", "options": {"label_format": "PNG", "invoice_number": - "123", "currency": "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, - "reference": "123", "status": "unknown", "tracking_code": null, "updated_at": - "2023-05-16T16:31:28Z", "batch_id": null, "batch_status": null, "batch_message": - null, "customs_info": {"id": "cstinfo_4c6a23020e1c4ec18cdabeb6000f7f5a", "object": - "CustomsInfo", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", - "contents_explanation": "", "contents_type": "merchandise", "customs_certify": - true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI 30.37(a)", "non_delivery_option": - "return", "restriction_comments": null, "restriction_type": "none", "mode": - "test", "declaration": null, "customs_items": [{"id": "cstitem_806ff0bfa2654a8d8563359d19179278", - "object": "CustomsItem", "created_at": "2023-05-16T16:31:27Z", "updated_at": - "2023-05-16T16:31:27Z", "description": "Sweet shirts", "hs_tariff_number": - "654321", "origin_country": "US", "quantity": 2, "value": "23.25", "weight": - 11.0, "code": null, "mode": "test", "manufacturer": null, "currency": null, - "eccn": null, "printed_commodity_identifier": null}]}, "from_address": {"id": - "adr_1b19a234f40711edb20cac1f6bc7b362", "object": "Address", "created_at": - "2023-05-16T16:31:27+00:00", "updated_at": "2023-05-16T16:31:27+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_8412b33c1ad042049c1f2db46077cad2", "created_at": "2025-03-07T16:46:17Z", + "is_return": false, "messages": [], "mode": "test", "options": {"label_format": + "PNG", "invoice_number": "123", "currency": "USD", "payment": {"type": "SENDER"}, + "date_advance": 0}, "reference": "123", "status": "unknown", "tracking_code": + null, "updated_at": "2025-03-07T16:46:17Z", "batch_id": null, "batch_status": + null, "batch_message": null, "customs_info": {"id": "cstinfo_ea932391af43411a995dd3e2893dac05", + "object": "CustomsInfo", "created_at": "2025-03-07T16:46:17Z", "updated_at": + "2025-03-07T16:46:17Z", "contents_explanation": "", "contents_type": "merchandise", + "customs_certify": true, "customs_signer": "Steve Brule", "eel_pfc": "NOEEI + 30.37(a)", "non_delivery_option": "return", "restriction_comments": null, + "restriction_type": "none", "mode": "test", "declaration": null, "customs_items": + [{"id": "cstitem_2ce8555331ac4236803a959dcbbeae51", "object": "CustomsItem", + "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "description": "Sweet shirts", "hs_tariff_number": "654321", "origin_country": + "US", "quantity": 2, "value": "23.25", "weight": 11.0, "code": null, "mode": + "test", "manufacturer": null, "currency": null, "eccn": null, "printed_commodity_identifier": + null}]}, "from_address": {"id": "adr_b0b6f50dfb7311efa17aac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_92d97082fce64f86a3c2aa2543f910c0", - "object": "Parcel", "created_at": "2023-05-16T16:31:27Z", "updated_at": "2023-05-16T16:31:27Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_089c8b364e6842ffb142492fe5462cd8", + "object": "Parcel", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_74e203ebcb3e4d8faf99eab218045e6f", - "object": "Rate", "created_at": "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_52878c61264945f0853ffa301bc19884", "object": "Rate", "created_at": - "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", "mode": "test", - "service": "Express", "carrier": "USPS", "rate": "31.25", "currency": "USD", - "retail_rate": "35.80", "retail_currency": "USD", "list_rate": "31.25", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": null, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": null, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_aa08f13d651a4baa8a18df1d6a0c59e2", "object": "Rate", "created_at": - "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", "mode": "test", - "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", "currency": - "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": "7.75", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 5, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 5, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}, - {"id": "rate_5e09427dd35a446dbbc0f6174842dcb7", "object": "Rate", "created_at": - "2023-05-16T16:31:28Z", "updated_at": "2023-05-16T16:31:28Z", "mode": "test", - "service": "Priority", "carrier": "USPS", "rate": "7.15", "currency": "USD", - "retail_rate": "10.20", "retail_currency": "USD", "list_rate": "8.24", "list_currency": - "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, - "delivery_date_guaranteed": false, "est_delivery_days": 2, "shipment_id": - "shp_b8f77e80448b4f3392c83ae84ade1cc4", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_1b17a53bf40711ed8583ac1f6b0a0d1e", "object": - "Address", "created_at": "2023-05-16T16:31:27+00:00", "updated_at": "2023-05-16T16:31:27+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_1b19a234f40711edb20cac1f6bc7b362", - "object": "Address", "created_at": "2023-05-16T16:31:27+00:00", "updated_at": - "2023-05-16T16:31:27+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_0e488701dc6a4037bd8c91d8de68e17f", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_8412b33c1ad042049c1f2db46077cad2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e68f89d1b3f141a5ac4d3578c145d47e", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_8412b33c1ad042049c1f2db46077cad2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_d4470be0a8b14ea7aa394bef22db9d1f", + "object": "Rate", "created_at": "2025-03-07T16:46:17Z", "updated_at": "2025-03-07T16:46:17Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_8412b33c1ad042049c1f2db46077cad2", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b0b3e045fb7311ef9bbeac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": + "2025-03-07T16:46:17+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_1b17a53bf40711ed8583ac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:27+00:00", "updated_at": "2023-05-16T16:31:27+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b0b6f50dfb7311efa17aac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b0b3e045fb7311ef9bbeac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:46:17+00:00", "updated_at": "2025-03-07T16:46:17+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_b8f77e80448b4f3392c83ae84ade1cc4", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '6722' + - '5160' content-type: - application/json; charset=utf-8 - etag: - - W/"a9928691f612582e24e0be72dcf6a2b9" expires: - '0' pragma: @@ -295,20 +251,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e36463afe0e7872f580027a24d + - 6eaaf90167cb22d9e2aaba1f000add3c x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb42nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.103810' + - '0.070165' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_shipment_retrieve_estimated_delivery_date.yaml b/tests/cassettes/test_shipment_retrieve_estimated_delivery_date.yaml new file mode 100644 index 00000000..81d831a6 --- /dev/null +++ b/tests/cassettes/test_shipment_retrieve_estimated_delivery_date.yaml @@ -0,0 +1,220 @@ +interactions: +- request: + body: '{"shipment": {"from_address": {"name": "Jack Sparrow", "street1": "388 + Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": + "94107", "country": "US", "email": "test@example.com", "phone": "5555555555"}, + "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": + "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", + "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": + 15.4}}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '496' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/shipments + response: + body: + string: '{"id": "shp_b520511fbb9a4f1fa75b9536da06e248", "created_at": "2025-03-07T16:51:57Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:51:57Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_7b3f51b9fb7411ef9b2a3cecef1b359e", "object": + "Address", "created_at": "2025-03-07T16:51:57+00:00", "updated_at": "2025-03-07T16:51:57+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_97def65dd2794827bb684cd032645cf3", + "object": "Parcel", "created_at": "2025-03-07T16:51:57Z", "updated_at": "2025-03-07T16:51:57Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_c6ea331ff71441b9a4758b1f4ac9c2ff", + "object": "Rate", "created_at": "2025-03-07T16:51:57Z", "updated_at": "2025-03-07T16:51:57Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_b520511fbb9a4f1fa75b9536da06e248", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_6c1c87030515431dab1e1832f48b4635", + "object": "Rate", "created_at": "2025-03-07T16:51:57Z", "updated_at": "2025-03-07T16:51:57Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 2, "shipment_id": "shp_b520511fbb9a4f1fa75b9536da06e248", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_509447c9567e4b249c8032e99dbb30dd", + "object": "Rate", "created_at": "2025-03-07T16:51:57Z", "updated_at": "2025-03-07T16:51:57Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b520511fbb9a4f1fa75b9536da06e248", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_7b3d2dbbfb7411ef9b67ac1f6bc539ae", + "object": "Address", "created_at": "2025-03-07T16:51:57+00:00", "updated_at": + "2025-03-07T16:51:57+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", + "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_7b3f51b9fb7411ef9b2a3cecef1b359e", "object": "Address", "created_at": + "2025-03-07T16:51:57+00:00", "updated_at": "2025-03-07T16:51:57+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_7b3d2dbbfb7411ef9b67ac1f6bc539ae", "object": + "Address", "created_at": "2025-03-07T16:51:57+00:00", "updated_at": "2025-03-07T16:51:57+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", + "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "forms": [], "fees": [], "object": "Shipment"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '4325' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/shipments/shp_b520511fbb9a4f1fa75b9536da06e248 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6eaaf8fa67cb242de2aac2be000c70ff + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb38nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 + x-runtime: + - '0.195935' + x-version-label: + - easypost-202503070040-19f686ce32-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/shipments/shp_b520511fbb9a4f1fa75b9536da06e248/smartrate/delivery_date?planned_ship_date=2025-03-08 + response: + body: + string: '{"rates": [{"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": + 3, "percentile_75": 4, "percentile_85": 4, "percentile_90": 5, "percentile_95": + 6, "percentile_97": 7, "percentile_99": 10}, "easypost_estimated_delivery_date": + "2025-03-10", "planned_ship_date": "2025-03-08"}, "rate": {"carrier": "USPS", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": + "2025-03-07T16:51:57Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": + false, "delivery_days": 1, "est_delivery_days": 1, "id": "rate_c6ea331ff71441b9a4758b1f4ac9c2ff", + "list_currency": "USD", "list_rate": 34.15, "mode": "test", "object": "Rate", + "rate": 34.15, "retail_currency": "USD", "retail_rate": 39.1, "service": "Express", + "shipment_id": "shp_b520511fbb9a4f1fa75b9536da06e248", "updated_at": "2025-03-07T16:51:57Z"}}, + {"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": 3, + "percentile_75": 4, "percentile_85": 4, "percentile_90": 5, "percentile_95": + 6, "percentile_97": 7, "percentile_99": 10}, "easypost_estimated_delivery_date": + "2025-03-11", "planned_ship_date": "2025-03-08"}, "rate": {"carrier": "USPS", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": + "2025-03-07T16:51:57Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": + false, "delivery_days": 2, "est_delivery_days": 2, "id": "rate_6c1c87030515431dab1e1832f48b4635", + "list_currency": "USD", "list_rate": 8.34, "mode": "test", "object": "Rate", + "rate": 7.42, "retail_currency": "USD", "retail_rate": 9.9, "service": "Priority", + "shipment_id": "shp_b520511fbb9a4f1fa75b9536da06e248", "updated_at": "2025-03-07T16:51:57Z"}}, + {"easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": 3, + "percentile_75": 4, "percentile_85": 5, "percentile_90": 5, "percentile_95": + 6, "percentile_97": 7, "percentile_99": 10}, "easypost_estimated_delivery_date": + "2025-03-11", "planned_ship_date": "2025-03-08"}, "rate": {"carrier": "USPS", + "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": + "2025-03-07T16:51:57Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": + false, "delivery_days": 3, "est_delivery_days": 3, "id": "rate_509447c9567e4b249c8032e99dbb30dd", + "list_currency": "USD", "list_rate": 6.57, "mode": "test", "object": "Rate", + "rate": 6.07, "retail_currency": "USD", "retail_rate": 8.85, "service": "GroundAdvantage", + "shipment_id": "shp_b520511fbb9a4f1fa75b9536da06e248", "updated_at": "2025-03-07T16:51:57Z"}}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '2343' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6eaaf8fa67cb242de2aac2be000c7140 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb58nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 + x-runtime: + - '0.087546' + x-version-label: + - easypost-202503070040-19f686ce32-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_shipment_smart_rate.yaml b/tests/cassettes/test_shipment_smart_rate.yaml index ebd653d3..c2dd8e42 100644 --- a/tests/cassettes/test_shipment_smart_rate.yaml +++ b/tests/cassettes/test_shipment_smart_rate.yaml @@ -6,7 +6,7 @@ interactions: "to_address": {"name": "Elizabeth Swan", "street1": "179 N Harbor Dr", "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "email": "test@example.com", "phone": "5555555555"}, "parcel": {"length": 10, "width": 8, "height": 4, "weight": - 15.4}}, "carbon_offset": false}' + 15.4}}}' headers: Accept: - '*/*' @@ -15,7 +15,7 @@ interactions: Connection: - keep-alive Content-Length: - - '520' + - '496' Content-Type: - application/json authorization: @@ -26,95 +26,73 @@ interactions: uri: https://api.easypost.com/v2/shipments response: body: - string: '{"created_at": "2023-05-16T16:31:39Z", "is_return": false, "messages": - [{"carrier": "DhlEcs", "carrier_account_id": "ca_c7b4cfaf671b4984b84023d77561394a", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_b1a0a1bc45844159812e0224d53948ea", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_711d8c4f9be54801b984e5dc9f2b5a7c", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_c3cbbd21bc97400bbbaed6d030909476", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_99007e1aeb66421faf82676f1199481e", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}, {"carrier": "DhlEcs", "carrier_account_id": "ca_0d64fd488c1444cf9bc16f858703e28f", - "type": "rate_error", "message": "Unauthorized. Please check credentials and - try again"}], "mode": "test", "options": {"currency": "USD", "payment": {"type": - "SENDER"}, "date_advance": 0}, "reference": null, "status": "unknown", "tracking_code": - null, "updated_at": "2023-05-16T16:31:40Z", "batch_id": null, "batch_status": - null, "batch_message": null, "customs_info": null, "from_address": {"id": - "adr_223d5c0cf40711ed878dac1f6b0a0d1e", "object": "Address", "created_at": - "2023-05-16T16:31:39+00:00", "updated_at": "2023-05-16T16:31:39+00:00", "name": - "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + string: '{"id": "shp_b5f086f48a4c4373aeb42a7809b62c0e", "created_at": "2025-03-07T16:46:26Z", + "is_return": false, "messages": [], "mode": "test", "options": {"currency": + "USD", "payment": {"type": "SENDER"}, "date_advance": 0}, "reference": null, + "status": "unknown", "tracking_code": null, "updated_at": "2025-03-07T16:46:26Z", + "batch_id": null, "batch_status": null, "batch_message": null, "customs_info": + null, "from_address": {"id": "adr_b610fa46fb7311efa4acac1f6bc539aa", "object": + "Address", "created_at": "2025-03-07T16:46:26+00:00", "updated_at": "2025-03-07T16:46:26+00:00", + "name": "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_7897f854657f405fa64cea8e33a8b09c", - "object": "Parcel", "created_at": "2023-05-16T16:31:39Z", "updated_at": "2023-05-16T16:31:39Z", + {}}, "insurance": null, "order_id": null, "parcel": {"id": "prcl_b388179ce8e345dbb0015104d6641375", + "object": "Parcel", "created_at": "2025-03-07T16:46:26Z", "updated_at": "2025-03-07T16:46:26Z", "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": - 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_cd2481b4ee43432bb32dd6743e52017d", - "object": "Rate", "created_at": "2023-05-16T16:31:40Z", "updated_at": "2023-05-16T16:31:40Z", - "mode": "test", "service": "Express", "carrier": "USPS", "rate": "31.25", - "currency": "USD", "retail_rate": "35.80", "retail_currency": "USD", "list_rate": - "31.25", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - null, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - null, "shipment_id": "shp_6f0a137b9c7548ae95804067f5cac413", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_a9d9e9539b944ff5807eacf24234603c", - "object": "Rate", "created_at": "2023-05-16T16:31:40Z", "updated_at": "2023-05-16T16:31:40Z", - "mode": "test", "service": "ParcelSelect", "carrier": "USPS", "rate": "6.76", - "currency": "USD", "retail_rate": "7.75", "retail_currency": "USD", "list_rate": - "7.75", "list_currency": "USD", "billing_type": "easypost", "delivery_days": - 5, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 5, "shipment_id": "shp_6f0a137b9c7548ae95804067f5cac413", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_2837791c286546be862499e71fabc8ac", - "object": "Rate", "created_at": "2023-05-16T16:31:40Z", "updated_at": "2023-05-16T16:31:40Z", - "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.15", - "currency": "USD", "retail_rate": "10.20", "retail_currency": "USD", "list_rate": - "8.24", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 15.4, "mode": "test"}, "postage_label": null, "rates": [{"id": "rate_0336c431fd744648a5e0970af7c2a044", + "object": "Rate", "created_at": "2025-03-07T16:46:26Z", "updated_at": "2025-03-07T16:46:26Z", + "mode": "test", "service": "Express", "carrier": "USPS", "rate": "34.15", + "currency": "USD", "retail_rate": "39.10", "retail_currency": "USD", "list_rate": + "34.15", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 1, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 1, "shipment_id": "shp_b5f086f48a4c4373aeb42a7809b62c0e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_e5d5e96493ec4ef19ea144c3f172fe19", + "object": "Rate", "created_at": "2025-03-07T16:46:26Z", "updated_at": "2025-03-07T16:46:26Z", + "mode": "test", "service": "Priority", "carrier": "USPS", "rate": "7.42", + "currency": "USD", "retail_rate": "9.90", "retail_currency": "USD", "list_rate": + "8.34", "list_currency": "USD", "billing_type": "easypost", "delivery_days": 2, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": - 2, "shipment_id": "shp_6f0a137b9c7548ae95804067f5cac413", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_b4700d4be6fb40869ff3438132df09ee", - "object": "Rate", "created_at": "2023-05-16T16:31:40Z", "updated_at": "2023-05-16T16:31:40Z", - "mode": "test", "service": "First", "carrier": "USPS", "rate": "6.07", "currency": - "USD", "retail_rate": "6.07", "retail_currency": "USD", "list_rate": "6.07", - "list_currency": "USD", "billing_type": "easypost", "delivery_days": 3, "delivery_date": - null, "delivery_date_guaranteed": false, "est_delivery_days": 3, "shipment_id": - "shp_6f0a137b9c7548ae95804067f5cac413", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e"}], - "refund_status": null, "scan_form": null, "selected_rate": null, "tracker": - null, "to_address": {"id": "adr_223afd8ef40711edb2ccac1f6bc7bdc6", "object": - "Address", "created_at": "2023-05-16T16:31:39+00:00", "updated_at": "2023-05-16T16:31:39+00:00", - "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": - null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", - "phone": "", "email": "", "mode": "test", "carrier_facility": - null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "usps_zone": 4, "return_address": {"id": "adr_223d5c0cf40711ed878dac1f6b0a0d1e", - "object": "Address", "created_at": "2023-05-16T16:31:39+00:00", "updated_at": - "2023-05-16T16:31:39+00:00", "name": "Jack Sparrow", "company": null, "street1": - "388 Townsend St", "street2": "Apt 20", "city": "San Francisco", "state": - "CA", "zip": "94107", "country": "US", "phone": "", "email": "", + 2, "shipment_id": "shp_b5f086f48a4c4373aeb42a7809b62c0e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}, {"id": "rate_5a552f4f40a7415cb4df2eb9ca0d9e7b", + "object": "Rate", "created_at": "2025-03-07T16:46:26Z", "updated_at": "2025-03-07T16:46:26Z", + "mode": "test", "service": "GroundAdvantage", "carrier": "USPS", "rate": "6.07", + "currency": "USD", "retail_rate": "8.85", "retail_currency": "USD", "list_rate": + "6.57", "list_currency": "USD", "billing_type": "easypost", "delivery_days": + 3, "delivery_date": null, "delivery_date_guaranteed": false, "est_delivery_days": + 3, "shipment_id": "shp_b5f086f48a4c4373aeb42a7809b62c0e", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e"}], "refund_status": null, "scan_form": + null, "selected_rate": null, "tracker": null, "to_address": {"id": "adr_b60df4c4fb7311efbf55ac1f6bc53342", + "object": "Address", "created_at": "2025-03-07T16:46:26+00:00", "updated_at": + "2025-03-07T16:46:26+00:00", "name": "Elizabeth Swan", "company": null, "street1": + "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", + "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": - null, "state_tax_id": null, "verifications": {}}, "buyer_address": {"id": - "adr_223afd8ef40711edb2ccac1f6bc7bdc6", "object": "Address", "created_at": - "2023-05-16T16:31:39+00:00", "updated_at": "2023-05-16T16:31:39+00:00", "name": - "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": + null, "state_tax_id": null, "verifications": {}}, "usps_zone": 4, "return_address": + {"id": "adr_b610fa46fb7311efa4acac1f6bc539aa", "object": "Address", "created_at": + "2025-03-07T16:46:26+00:00", "updated_at": "2025-03-07T16:46:26+00:00", "name": + "Jack Sparrow", "company": null, "street1": "388 Townsend St", "street2": + "Apt 20", "city": "San Francisco", "state": "CA", "zip": "94107", "country": + "US", "phone": "", "email": "", "mode": "test", "carrier_facility": + null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": + {}}, "buyer_address": {"id": "adr_b60df4c4fb7311efbf55ac1f6bc53342", "object": + "Address", "created_at": "2025-03-07T16:46:26+00:00", "updated_at": "2025-03-07T16:46:26+00:00", + "name": "Elizabeth Swan", "company": null, "street1": "179 N Harbor Dr", "street2": null, "city": "Redondo Beach", "state": "CA", "zip": "90277", "country": "US", "phone": "", "email": "", "mode": "test", "carrier_facility": null, "residential": null, "federal_tax_id": null, "state_tax_id": null, "verifications": - {}}, "forms": [], "fees": [], "id": "shp_6f0a137b9c7548ae95804067f5cac413", - "object": "Shipment"}' + {}}, "forms": [], "fees": [], "object": "Shipment"}' headers: cache-control: - private, no-cache, no-store content-length: - - '5851' + - '4325' content-type: - application/json; charset=utf-8 - etag: - - W/"9c33c0ed7c51a17dadad67bb0aea868d" expires: - '0' location: - - /api/v2/shipments/shp_6f0a137b9c7548ae95804067f5cac413 + - /api/v2/shipments/shp_b5f086f48a4c4373aeb42a7809b62c0e pragma: - no-cache referrer-policy: @@ -130,20 +108,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afebe7872f770027a5ea + - 6eaaf8fa67cb22e2e2aabd5b000aead6 x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.879723' + - '0.232721' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: @@ -163,53 +141,42 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/shipments/shp_6f0a137b9c7548ae95804067f5cac413/smartrate + uri: https://api.easypost.com/v2/shipments/shp_b5f086f48a4c4373aeb42a7809b62c0e/smartrate response: body: string: '{"result": [{"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:40Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": null, "est_delivery_days": - null, "id": "rate_cd2481b4ee43432bb32dd6743e52017d", "list_currency": "USD", - "list_rate": 31.25, "mode": "test", "object": "Rate", "rate": 31.25, "retail_currency": - "USD", "retail_rate": 35.8, "service": "Express", "shipment_id": "shp_6f0a137b9c7548ae95804067f5cac413", - "time_in_transit": {"percentile_50": 1, "percentile_75": 2, "percentile_85": - 2, "percentile_90": 2, "percentile_95": 3, "percentile_97": 3, "percentile_99": - 4}, "updated_at": "2023-05-16T16:31:40Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:40Z", - "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 5, "est_delivery_days": 5, "id": "rate_a9d9e9539b944ff5807eacf24234603c", - "list_currency": "USD", "list_rate": 7.75, "mode": "test", "object": "Rate", - "rate": 6.76, "retail_currency": "USD", "retail_rate": 7.75, "service": "ParcelSelect", - "shipment_id": "shp_6f0a137b9c7548ae95804067f5cac413", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 2, "percentile_97": 2, "percentile_99": 3}, "updated_at": - "2023-05-16T16:31:40Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", - "created_at": "2023-05-16T16:31:40Z", "currency": "USD", "delivery_date": - null, "delivery_date_guaranteed": false, "delivery_days": 2, "est_delivery_days": - 2, "id": "rate_2837791c286546be862499e71fabc8ac", "list_currency": "USD", - "list_rate": 8.24, "mode": "test", "object": "Rate", "rate": 7.15, "retail_currency": - "USD", "retail_rate": 10.2, "service": "Priority", "shipment_id": "shp_6f0a137b9c7548ae95804067f5cac413", + "created_at": "2025-03-07T16:46:26Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 1, "est_delivery_days": + 1, "id": "rate_0336c431fd744648a5e0970af7c2a044", "list_currency": "USD", + "list_rate": 34.15, "mode": "test", "object": "Rate", "rate": 34.15, "retail_currency": + "USD", "retail_rate": 39.1, "service": "Express", "shipment_id": "shp_b5f086f48a4c4373aeb42a7809b62c0e", "time_in_transit": {"percentile_50": 2, "percentile_75": 2, "percentile_85": - 2, "percentile_90": 2, "percentile_95": 2, "percentile_97": 3, "percentile_99": - 3}, "updated_at": "2023-05-16T16:31:40Z"}, {"carrier": "USPS", "carrier_account_id": - "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2023-05-16T16:31:40Z", + 3, "percentile_90": 3, "percentile_95": 4, "percentile_97": 5, "percentile_99": + 8}, "updated_at": "2025-03-07T16:46:26Z"}, {"carrier": "USPS", "carrier_account_id": + "ca_b25657e9896e4d63ac8151ac346ac41e", "created_at": "2025-03-07T16:46:26Z", "currency": "USD", "delivery_date": null, "delivery_date_guaranteed": false, - "delivery_days": 3, "est_delivery_days": 3, "id": "rate_b4700d4be6fb40869ff3438132df09ee", - "list_currency": "USD", "list_rate": 6.07, "mode": "test", "object": "Rate", - "rate": 6.07, "retail_currency": "USD", "retail_rate": 6.07, "service": "First", - "shipment_id": "shp_6f0a137b9c7548ae95804067f5cac413", "time_in_transit": - {"percentile_50": 1, "percentile_75": 2, "percentile_85": 2, "percentile_90": - 2, "percentile_95": 3, "percentile_97": 4, "percentile_99": 5}, "updated_at": - "2023-05-16T16:31:40Z"}]}' + "delivery_days": 2, "est_delivery_days": 2, "id": "rate_e5d5e96493ec4ef19ea144c3f172fe19", + "list_currency": "USD", "list_rate": 8.34, "mode": "test", "object": "Rate", + "rate": 7.42, "retail_currency": "USD", "retail_rate": 9.9, "service": "Priority", + "shipment_id": "shp_b5f086f48a4c4373aeb42a7809b62c0e", "time_in_transit": + {"percentile_50": 2, "percentile_75": 2, "percentile_85": 2, "percentile_90": + 3, "percentile_95": 3, "percentile_97": 3, "percentile_99": 4}, "updated_at": + "2025-03-07T16:46:26Z"}, {"carrier": "USPS", "carrier_account_id": "ca_b25657e9896e4d63ac8151ac346ac41e", + "created_at": "2025-03-07T16:46:26Z", "currency": "USD", "delivery_date": + null, "delivery_date_guaranteed": false, "delivery_days": 3, "est_delivery_days": + 3, "id": "rate_5a552f4f40a7415cb4df2eb9ca0d9e7b", "list_currency": "USD", + "list_rate": 6.57, "mode": "test", "object": "Rate", "rate": 6.07, "retail_currency": + "USD", "retail_rate": 8.85, "service": "GroundAdvantage", "shipment_id": "shp_b5f086f48a4c4373aeb42a7809b62c0e", + "time_in_transit": {"percentile_50": 1, "percentile_75": 2, "percentile_85": + 2, "percentile_90": 2, "percentile_95": 3, "percentile_97": 3, "percentile_99": + 4}, "updated_at": "2025-03-07T16:46:26Z"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '2620' + - '1969' content-type: - application/json; charset=utf-8 - etag: - - W/"1df6ecd6aec5ded4af8358f73a24f0d8" expires: - '0' pragma: @@ -227,20 +194,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e56463afece7872f770027a65a + - 6eaaf8fa67cb22e2e2aabd5b000aeb45 x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 x-runtime: - - '0.086283' + - '0.094670' x-version-label: - - easypost-202305152249-750e1e7d95-master + - easypost-202503070040-19f686ce32-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_smartrate_estimate_delivery_date.yaml b/tests/cassettes/test_smartrate_estimate_delivery_date.yaml new file mode 100644 index 00000000..33094ace --- /dev/null +++ b/tests/cassettes/test_smartrate_estimate_delivery_date.yaml @@ -0,0 +1,87 @@ +interactions: +- request: + body: '{"from_zip": "94107", "to_zip": "90277", "planned_ship_date": "2025-03-08", + "carriers": ["USPS"]}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '97' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/smartrate/deliver_by + response: + body: + string: '{"carriers_without_tint_estimates": null, "from_zip": "94107", "planned_ship_date": + "2025-03-08", "results": [{"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 4, "percentile_85": + 4, "percentile_90": 5, "percentile_95": 6, "percentile_97": 7, "percentile_99": + 10}, "easypost_estimated_delivery_date": "2025-03-10"}, "service": "express"}, + {"carrier": "USPS", "easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": + 3, "percentile_75": 4, "percentile_85": 5, "percentile_90": 5, "percentile_95": + 6, "percentile_97": 7, "percentile_99": 10}, "easypost_estimated_delivery_date": + "2025-03-11"}, "service": "groundadvantage"}, {"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 4, "percentile_85": + 4, "percentile_90": 5, "percentile_95": 6, "percentile_97": 6, "percentile_99": + 9}, "easypost_estimated_delivery_date": "2025-03-11"}, "service": "librarymail"}, + {"carrier": "USPS", "easypost_time_in_transit_data": {"days_in_transit": {"percentile_50": + 3, "percentile_75": 3, "percentile_85": 4, "percentile_90": 5, "percentile_95": + 6, "percentile_97": 6, "percentile_99": 9}, "easypost_estimated_delivery_date": + "2025-03-10"}, "service": "mediamail"}, {"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 4, "percentile_85": + 4, "percentile_90": 5, "percentile_95": 6, "percentile_97": 7, "percentile_99": + 10}, "easypost_estimated_delivery_date": "2025-03-11"}, "service": "priority"}], + "saturday_delivery": false, "to_zip": "90277"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1500' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6eaaf8fc67cb22e9e2aabd96000af398 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb58nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 + x-runtime: + - '0.077031' + x-version-label: + - easypost-202503070040-19f686ce32-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_smartrate_recommend_ship_date.yaml b/tests/cassettes/test_smartrate_recommend_ship_date.yaml new file mode 100644 index 00000000..1b6d7641 --- /dev/null +++ b/tests/cassettes/test_smartrate_recommend_ship_date.yaml @@ -0,0 +1,92 @@ +interactions: +- request: + body: '{"from_zip": "94107", "to_zip": "90277", "desired_delivery_date": "2025-03-08", + "carriers": ["USPS"]}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '101' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/smartrate/deliver_on + response: + body: + string: '{"carriers_without_tint_estimates": null, "desired_delivery_date": + "2025-03-08", "from_zip": "94107", "results": [{"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 3, "percentile_85": + 4, "percentile_90": 4, "percentile_95": 5, "percentile_97": 6, "percentile_99": + 8}, "delivery_date_confidence": 0.38, "estimated_transit_days": 1, "ship_on_date": + "2025-03-07"}, "service": "express"}, {"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 4, "percentile_75": 4, "percentile_85": + 5, "percentile_90": 5, "percentile_95": 6, "percentile_97": 7, "percentile_99": + 10}, "delivery_date_confidence": 0.03, "estimated_transit_days": 1, "ship_on_date": + "2025-03-07"}, "service": "groundadvantage"}, {"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 4, "percentile_85": + 5, "percentile_90": 5, "percentile_95": 6, "percentile_97": 7, "percentile_99": + 8}, "delivery_date_confidence": 0.05, "estimated_transit_days": 1, "ship_on_date": + "2025-03-07"}, "service": "librarymail"}, {"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 4, "percentile_85": + 5, "percentile_90": 5, "percentile_95": 6, "percentile_97": 7, "percentile_99": + 10}, "delivery_date_confidence": 0.03, "estimated_transit_days": 1, "ship_on_date": + "2025-03-07"}, "service": "mediamail"}, {"carrier": "USPS", "easypost_time_in_transit_data": + {"days_in_transit": {"percentile_50": 3, "percentile_75": 4, "percentile_85": + 5, "percentile_90": 5, "percentile_95": 6, "percentile_97": 7, "percentile_99": + 10}, "delivery_date_confidence": 0.04, "estimated_transit_days": 1, "ship_on_date": + "2025-03-07"}, "service": "priority"}], "saturday_delivery": false, "to_zip": + "90277"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1699' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-canary: + - direct + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 6eaaf90067cb22e9e2aabd97000af3cf + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb43nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 324e75def6 + - extlb1nuq 99aac35317 + x-runtime: + - '0.068947' + x-version-label: + - easypost-202503070040-19f686ce32-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_tracker_all.yaml b/tests/cassettes/test_tracker_all.yaml index c91db753..36fec316 100644 --- a/tests/cassettes/test_tracker_all.yaml +++ b/tests/cassettes/test_tracker_all.yaml @@ -16,230 +16,119 @@ interactions: uri: https://api.easypost.com/v2/trackers?page_size=5 response: body: - string: '{"trackers": [{"id": "trk_8de54ec569444a0eabd75bd9dcecc96b", "object": - "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:44:03Z", "updated_at": - "2023-05-16T16:44:03Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:44:03Z", "shipment_id": null, "carrier": "USPS", "tracking_details": - [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", - "description": null, "status": "pre_transit", "status_detail": "status_update", - "datetime": "2023-04-16T16:44:03Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": null, "state": - null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": - "Shipping Label Created", "description": null, "status": "pre_transit", "status_detail": - "status_update", "datetime": "2023-04-17T05:21:03Z", "source": "USPS", "carrier_code": - null, "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", - "state": "TX", "country": null, "zip": "77063"}}], "fees": [{"object": "Fee", - "type": "TrackerFee", "amount": "0.02000", "charged": false, "refunded": false}], - "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package - Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": - null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": + string: '{"trackers": [{"id": "trk_977a3085fc654ae3955af46ac298e43c", "object": + "Tracker", "mode": "test", "tracking_code": "9400100208303109500782", "status": + "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:46Z", + "updated_at": "2025-03-06T19:48:46Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:46Z", "shipment_id": "shp_34cd3af0099a4d5c815a44c1a408f095", + "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:46Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:46Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": + [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class + Package Service", "container_type": null, "est_delivery_date_local": null, + "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrXzhkZTU0ZWM1Njk0NDRhMGVhYmQ3NWJkOWRjZWNjOTZi"}, - {"id": "trk_1c719471026e4f858de8762ac10884f4", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210342375", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:34:01Z", - "updated_at": "2023-05-16T16:37:01Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:37:01Z", "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", + null}, "public_url": "https://track.easypost.com/djE6dHJrXzk3N2EzMDg1ZmM2NTRhZTM5NTVhZjQ2YWMyOThlNDNj"}, + {"id": "trk_bdaa56e02ed74f6ea2839e6ea6a4f75d", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500775", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:43Z", "updated_at": + "2025-03-06T19:48:43Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:43Z", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:37:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:43Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:14:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:19:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:55:01Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:46:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:26:01Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:36:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:28:01Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:43Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:28:01Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzFjNzE5NDcxMDI2ZTRmODU4ZGU4NzYyYWMxMDg4NGY0"}, - {"id": "trk_e1f75c88864041ef92d1ba0fd4c9a7ed", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210342023", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:32:38Z", - "updated_at": "2023-05-16T16:35:38Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:35:38Z", "shipment_id": "shp_73a181c595d24125a958ea82288c2248", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2JkYWE1NmUwMmVkNzRmNmVhMjgzOWU2ZWE2YTRmNzVk"}, + {"id": "trk_d9dbe609c13e43cab049e342d82e39c8", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500768", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:38Z", "updated_at": + "2025-03-06T19:48:38Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:38Z", "shipment_id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:35:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:38Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:12:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:17:38Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:53:38Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:44:38Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:24:38Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:34:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:26:38Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:38Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:26:38Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2UxZjc1Yzg4ODY0MDQxZWY5MmQxYmEwZmQ0YzlhN2Vk"}, - {"id": "trk_4f2f427fc4554663b6a6121710218198", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341828", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:56Z", - "updated_at": "2023-05-16T16:34:57Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:57Z", "shipment_id": "shp_9fd8372a9e274d25bb150a4c480733dc", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2Q5ZGJlNjA5YzEzZTQzY2FiMDQ5ZTM0MmQ4MmUzOWM4"}, + {"id": "trk_d2334116ca1a44d594b097143f314914", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500751", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:37Z", "updated_at": + "2025-03-06T19:48:37Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:37Z", "shipment_id": "shp_43d0816a4bf241d5a702f97b81425f24", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:57Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:37Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:57Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:57Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:57Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:57Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:57Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:57Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:57Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:37Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:57Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzRmMmY0MjdmYzQ1NTQ2NjNiNmE2MTIxNzEwMjE4MTk4"}, - {"id": "trk_33b91297097d4ad28fe0207dae34fca5", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341804", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:54Z", - "updated_at": "2023-05-16T16:34:54Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:54Z", "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2QyMzM0MTE2Y2ExYTQ0ZDU5NGIwOTcxNDNmMzE0OTE0"}, + {"id": "trk_ec716c707447468ca43e51402edc08e1", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500744", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:35Z", "updated_at": + "2025-03-06T19:48:35Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:35Z", "shipment_id": "shp_6f3635c994834c9294c472c755a7d5c8", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:54Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:35Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:54Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:54Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:54Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:54Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:54Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:54Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:54Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:35Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:54Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzMzYjkxMjk3MDk3ZDRhZDI4ZmUwMjA3ZGFlMzRmY2E1"}], + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2VjNzE2YzcwNzQ0NzQ2OGNhNDNlNTE0MDJlZGMwOGUx"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '16532' + - '8220' content-type: - application/json; charset=utf-8 - etag: - - W/"e91403a5e38f7fccf2f1710f832ebb64" expires: - '0' pragma: @@ -257,20 +146,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e076463b2d3e787383d002bd709 + - 8e8eb62c67c9fc29e2b97ef20018b82c x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.156230' + - '0.188864' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_tracker_create.yaml b/tests/cassettes/test_tracker_create.yaml index c502919a..c4c7feaa 100644 --- a/tests/cassettes/test_tracker_create.yaml +++ b/tests/cassettes/test_tracker_create.yaml @@ -20,19 +20,19 @@ interactions: uri: https://api.easypost.com/v2/trackers response: body: - string: '{"id": "trk_8de54ec569444a0eabd75bd9dcecc96b", "object": "Tracker", + string: '{"id": "trk_e7e8f143f3eb40d38be9562e3767c36a", "object": "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:44:03Z", "updated_at": - "2023-05-16T16:44:03Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:44:02Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + "status_detail": "status_update", "created_at": "2025-03-06T19:48:26Z", "updated_at": + "2025-03-06T19:48:26Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:26Z", "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", - "description": null, "status": "pre_transit", "status_detail": "status_update", - "datetime": "2023-04-16T16:44:02Z", "source": "USPS", "carrier_code": null, + "description": "", "status": "pre_transit", "status_detail": "status_update", + "datetime": "2025-02-06T19:48:26Z", "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": - "Shipping Label Created", "description": null, "status": "pre_transit", "status_detail": - "status_update", "datetime": "2023-04-17T05:21:02Z", "source": "USPS", "carrier_code": - null, "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:26Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": @@ -40,22 +40,18 @@ interactions: "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": - true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzhkZTU0ZWM1Njk0NDRhMGVhYmQ3NWJkOWRjZWNjOTZi", - "fees": [{"object": "Fee", "type": "TrackerFee", "amount": "0.02000", "charged": - false, "refunded": false}]}' + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrX2U3ZThmMTQzZjNlYjQwZDM4YmU5NTYyZTM3NjdjMzZh"}' headers: cache-control: - private, no-cache, no-store content-length: - - '1724' + - '1618' content-type: - application/json; charset=utf-8 - etag: - - W/"0bb4a4435918bb7a126c1ebd891be43d" expires: - '0' location: - - /api/v2/trackers/trk_8de54ec569444a0eabd75bd9dcecc96b + - /api/v2/trackers/trk_e7e8f143f3eb40d38be9562e3767c36a pragma: - no-cache referrer-policy: @@ -71,23 +67,23 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e086463b2d2e787383b002bd6b7 + - 8e8eb62b67c9fc29e2b97ef00018b7bb x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.131016' + - '0.074477' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: - code: 201 - message: Created + code: 200 + message: OK version: 1 diff --git a/tests/cassettes/test_tracker_delete.yaml b/tests/cassettes/test_tracker_delete.yaml new file mode 100644 index 00000000..115b4cdc --- /dev/null +++ b/tests/cassettes/test_tracker_delete.yaml @@ -0,0 +1,153 @@ +interactions: +- request: + body: '{"tracker": {"tracking_code": "EZ1000000001"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '46' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/trackers + response: + body: + string: '{"id": "trk_52d78046d6a14e8b92af8b8546080a05", "object": "Tracker", + "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-11-05T21:59:07Z", "updated_at": + "2025-11-05T21:59:07Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-11-05T21:59:07Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", + "description": "", "status": "pre_transit", "status_detail": "status_update", + "datetime": "2025-10-05T21:59:07Z", "source": "USPS", "carrier_code": "", + "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}, "est_delivery_date": null}, {"object": + "TrackingDetail", "message": "Shipping Label Created", "description": "", + "status": "pre_transit", "status_detail": "status_update", "datetime": "2025-10-06T10:36:07Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "est_delivery_date": + null}], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class + Package Service", "container_type": null, "est_delivery_date_local": null, + "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "delivery_evidence": [], "finalized": true, "is_return": false, "public_url": + "https://track.easypost.com/djE6dHJrXzUyZDc4MDQ2ZDZhMTRlOGI5MmFmOGI4NTQ2MDgwYTA1"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1691' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/trackers/trk_52d78046d6a14e8b92af8b8546080a05 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7dd2312e69824159e788f74f0032e696 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb33nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 5f0235a1ab + - extlb2nuq cbbd141214 + x-runtime: + - '0.063693' + x-version-label: + - easypost-202602022215-5a5c93c546-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + authorization: + - + user-agent: + - + method: DELETE + uri: https://api.easypost.com/v2/trackers/trk_52d78046d6a14e8b92af8b8546080a05 + response: + body: + string: '{"success": true}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '16' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 7dd231306982415ae788f7500032e6fe + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb53nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 5f0235a1ab + - extlb2nuq cbbd141214 + x-runtime: + - '0.041496' + x-version-label: + - easypost-202602022215-5a5c93c546-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_tracker_get_next_page.yaml b/tests/cassettes/test_tracker_get_next_page.yaml index 4d3d68a5..f8b7d347 100644 --- a/tests/cassettes/test_tracker_get_next_page.yaml +++ b/tests/cassettes/test_tracker_get_next_page.yaml @@ -16,230 +16,119 @@ interactions: uri: https://api.easypost.com/v2/trackers?page_size=5 response: body: - string: '{"trackers": [{"id": "trk_8de54ec569444a0eabd75bd9dcecc96b", "object": - "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:44:03Z", "updated_at": - "2023-05-16T16:44:03Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:44:03Z", "shipment_id": null, "carrier": "USPS", "tracking_details": - [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", - "description": null, "status": "pre_transit", "status_detail": "status_update", - "datetime": "2023-04-16T16:44:03Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": null, "state": - null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": - "Shipping Label Created", "description": null, "status": "pre_transit", "status_detail": - "status_update", "datetime": "2023-04-17T05:21:03Z", "source": "USPS", "carrier_code": - null, "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", - "state": "TX", "country": null, "zip": "77063"}}], "fees": [{"object": "Fee", - "type": "TrackerFee", "amount": "0.02000", "charged": false, "refunded": false}], - "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package - Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": - null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": + string: '{"trackers": [{"id": "trk_977a3085fc654ae3955af46ac298e43c", "object": + "Tracker", "mode": "test", "tracking_code": "9400100208303109500782", "status": + "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:46Z", + "updated_at": "2025-03-06T19:48:46Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:46Z", "shipment_id": "shp_34cd3af0099a4d5c815a44c1a408f095", + "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:46Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:46Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": + [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class + Package Service", "container_type": null, "est_delivery_date_local": null, + "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrXzhkZTU0ZWM1Njk0NDRhMGVhYmQ3NWJkOWRjZWNjOTZi"}, - {"id": "trk_1c719471026e4f858de8762ac10884f4", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210342375", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:34:01Z", - "updated_at": "2023-05-16T16:37:01Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:37:01Z", "shipment_id": "shp_bed157bf505f4c4a82302cc9e09619e4", + null}, "public_url": "https://track.easypost.com/djE6dHJrXzk3N2EzMDg1ZmM2NTRhZTM5NTVhZjQ2YWMyOThlNDNj"}, + {"id": "trk_bdaa56e02ed74f6ea2839e6ea6a4f75d", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500775", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:43Z", "updated_at": + "2025-03-06T19:48:43Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:43Z", "shipment_id": "shp_82abbe8e8a1f4746bfbe7c943906c52c", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:37:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:43Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:14:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:19:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:55:01Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:46:01Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:26:01Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:36:01Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:28:01Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:43Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:28:01Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzFjNzE5NDcxMDI2ZTRmODU4ZGU4NzYyYWMxMDg4NGY0"}, - {"id": "trk_e1f75c88864041ef92d1ba0fd4c9a7ed", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210342023", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:32:38Z", - "updated_at": "2023-05-16T16:35:38Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:35:38Z", "shipment_id": "shp_73a181c595d24125a958ea82288c2248", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2JkYWE1NmUwMmVkNzRmNmVhMjgzOWU2ZWE2YTRmNzVk"}, + {"id": "trk_d9dbe609c13e43cab049e342d82e39c8", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500768", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:38Z", "updated_at": + "2025-03-06T19:48:38Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:38Z", "shipment_id": "shp_2c32b9ec8aee457092a15eaeac3fd2bf", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:35:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:38Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:12:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:17:38Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:53:38Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:44:38Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:24:38Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:34:38Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:26:38Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:38Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:26:38Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2UxZjc1Yzg4ODY0MDQxZWY5MmQxYmEwZmQ0YzlhN2Vk"}, - {"id": "trk_4f2f427fc4554663b6a6121710218198", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341828", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:56Z", - "updated_at": "2023-05-16T16:34:57Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:57Z", "shipment_id": "shp_9fd8372a9e274d25bb150a4c480733dc", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2Q5ZGJlNjA5YzEzZTQzY2FiMDQ5ZTM0MmQ4MmUzOWM4"}, + {"id": "trk_d2334116ca1a44d594b097143f314914", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500751", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:37Z", "updated_at": + "2025-03-06T19:48:37Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:37Z", "shipment_id": "shp_43d0816a4bf241d5a702f97b81425f24", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:57Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:37Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:57Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:57Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:57Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:57Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:57Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:57Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:57Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:37Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:57Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzRmMmY0MjdmYzQ1NTQ2NjNiNmE2MTIxNzEwMjE4MTk4"}, - {"id": "trk_33b91297097d4ad28fe0207dae34fca5", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341804", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:54Z", - "updated_at": "2023-05-16T16:34:54Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:54Z", "shipment_id": "shp_8d961782f9174b70a46c6fe4b179e4b1", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2QyMzM0MTE2Y2ExYTQ0ZDU5NGIwOTcxNDNmMzE0OTE0"}, + {"id": "trk_ec716c707447468ca43e51402edc08e1", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500744", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:35Z", "updated_at": + "2025-03-06T19:48:35Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:35Z", "shipment_id": "shp_6f3635c994834c9294c472c755a7d5c8", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:54Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:35Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:54Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:54Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:54Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:54Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:54Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:54Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:54Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:35Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:54Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzMzYjkxMjk3MDk3ZDRhZDI4ZmUwMjA3ZGFlMzRmY2E1"}], + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2VjNzE2YzcwNzQ0NzQ2OGNhNDNlNTE0MDJlZGMwOGUx"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '16532' + - '8220' content-type: - application/json; charset=utf-8 - etag: - - W/"e91403a5e38f7fccf2f1710f832ebb64" expires: - '0' pragma: @@ -252,25 +141,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e076463b2d4e787383e002bd738 + - 8e8eb62967c9fc2ae2b97ef30018b871 x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.220044' + - '0.202125' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -290,259 +181,121 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/trackers?before_id=trk_33b91297097d4ad28fe0207dae34fca5&page_size=5 + uri: https://api.easypost.com/v2/trackers?before_id=trk_ec716c707447468ca43e51402edc08e1&page_size=5 response: body: - string: '{"trackers": [{"id": "trk_04ee4a941e8e4a5588055b6c888a1e0a", "object": - "Tracker", "mode": "test", "tracking_code": "9400100104262210341798", "status": - "delivered", "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:52Z", - "updated_at": "2023-05-16T16:34:52Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:52Z", "shipment_id": "shp_1f8bcc1d9de543d6b459de624fcccd3d", + string: '{"trackers": [{"id": "trk_8a5adf896fbf4684b5db608a20e187d2", "object": + "Tracker", "mode": "test", "tracking_code": "9400100208303109500737", "status": + "pre_transit", "status_detail": "status_update", "created_at": "2025-03-06T19:48:34Z", + "updated_at": "2025-03-06T19:48:34Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:34Z", "shipment_id": "shp_d76a64c356314323a637eb431df56721", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:52Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:34Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:52Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:52Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:52Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:52Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:52Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:52Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:52Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:34Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:52Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzA0ZWU0YTk0MWU4ZTRhNTU4ODA1NWI2Yzg4OGExZTBh"}, - {"id": "trk_ea5f9707a5a942c785a32081bd79e1c4", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341637", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:38Z", - "updated_at": "2023-05-16T16:34:39Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:39Z", "shipment_id": "shp_6202abb22874490ab3631a413493bdeb", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzhhNWFkZjg5NmZiZjQ2ODRiNWRiNjA4YTIwZTE4N2Qy"}, + {"id": "trk_90f0033e63f7420f8ce7ded19805e9f6", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500720", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:32Z", "updated_at": + "2025-03-06T19:48:32Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:32Z", "shipment_id": "shp_c472b7b0b457413a9fdf31a7843a199e", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:39Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:32Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:39Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:39Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:39Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:39Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:39Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:39Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:39Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:32Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:39Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2VhNWY5NzA3YTVhOTQyYzc4NWEzMjA4MWJkNzllMWM0"}, - {"id": "trk_b6607dd3b1ee487e81a804d42383628c", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341620", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:37Z", - "updated_at": "2023-05-16T16:34:37Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:37Z", "shipment_id": "shp_3afa3dc2ef6c4d008cac6ccc08e4aef7", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzkwZjAwMzNlNjNmNzQyMGY4Y2U3ZGVkMTk4MDVlOWY2"}, + {"id": "trk_213b27933f19450cbb6096e57a372e0e", "object": "Tracker", "mode": + "test", "tracking_code": "9400100208303109500713", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:30Z", "updated_at": + "2025-03-06T19:48:30Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:30Z", "shipment_id": "shp_9cb9c80740454d9ba08fb92d49256ec9", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:37Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:30Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:37Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:37Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:37Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:37Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:37Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:37Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:37Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:30Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:37Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2I2NjA3ZGQzYjFlZTQ4N2U4MWE4MDRkNDIzODM2Mjhj"}, - {"id": "trk_93e5cabacc4441caaf5b9c2df096e1c2", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341583", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:35Z", - "updated_at": "2023-05-16T16:34:36Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:36Z", "shipment_id": "shp_1201cff4ea724643b6ca18a80024fd8b", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrXzIxM2IyNzkzM2YxOTQ1MGNiYjYwOTZlNTdhMzcyZTBl"}, + {"id": "trk_a2af9f98be1f4922abb5bf8c970a86c5", "object": "Tracker", "mode": + "test", "tracking_code": "9434600208303109492683", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-03-06T19:48:30Z", "updated_at": + "2025-03-06T19:48:30Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:30Z", "shipment_id": "shp_481597ab57634eea9a07f99e967f6aa5", "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:36Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "Pre-Shipment Info Sent to USPS", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-06T19:48:30Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:36Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:36Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:36Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:36Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:36Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:36Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:36Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:30Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:36Z"}, "public_url": "https://track.easypost.com/djE6dHJrXzkzZTVjYWJhY2M0NDQxY2FhZjViOWMyZGYwOTZlMWMy"}, - {"id": "trk_ee0265f7091641c99538b787cad56e1e", "object": "Tracker", "mode": - "test", "tracking_code": "9400100104262210341552", "status": "delivered", - "status_detail": "arrived_at_destination", "created_at": "2023-05-16T16:31:32Z", - "updated_at": "2023-05-16T16:34:33Z", "signed_by": "John Tester", "weight": - null, "est_delivery_date": "2023-05-16T16:34:33Z", "shipment_id": "shp_1c7388a907eb47208f9aafbff063d773", - "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": - "Pre-Shipment Info Sent to USPS", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-16T16:34:33Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2EyYWY5Zjk4YmUxZjQ5MjJhYmI1YmY4Yzk3MGE4NmM1"}, + {"id": "trk_e7e8f143f3eb40d38be9562e3767c36a", "object": "Tracker", "mode": + "test", "tracking_code": "EZ1000000001", "status": "pre_transit", "status_detail": + "status_update", "created_at": "2025-03-06T19:48:26Z", "updated_at": "2025-03-06T19:48:26Z", + "signed_by": null, "weight": null, "est_delivery_date": "2025-03-06T19:48:26Z", + "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", + "message": "Pre-Shipment Info Sent to USPS", "description": "", "status": + "pre_transit", "status_detail": "status_update", "datetime": "2025-02-06T19:48:26Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", - "message": "Shipping Label Created", "description": null, "status": "pre_transit", - "status_detail": "status_update", "datetime": "2023-04-17T05:11:33Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}, {"object": - "TrackingDetail", "message": "Arrived at USPS Origin Facility", "description": - null, "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-17T15:16:33Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}}, {"object": "TrackingDetail", "message": "Arrived at - USPS Facility", "description": null, "status": "in_transit", "status_detail": - "arrived_at_facility", "datetime": "2023-04-18T16:52:33Z", "source": "USPS", - "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "COLUMBIA", "state": "SC", "country": null, "zip": "29201"}}, {"object": - "TrackingDetail", "message": "Arrived at Post Office", "description": null, - "status": "in_transit", "status_detail": "arrived_at_facility", "datetime": - "2023-04-18T19:43:33Z", "source": "USPS", "carrier_code": null, "tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}}, {"object": "TrackingDetail", "message": "Sorting Complete", - "description": null, "status": "in_transit", "status_detail": "status_update", - "datetime": "2023-04-19T01:23:33Z", "source": "USPS", "carrier_code": null, - "tracking_location": {"object": "TrackingLocation", "city": "CHARLESTON", - "state": "SC", "country": null, "zip": "29407"}}, {"object": "TrackingDetail", - "message": "Out for Delivery", "description": null, "status": "out_for_delivery", - "status_detail": "out_for_delivery", "datetime": "2023-04-19T01:33:33Z", "source": - "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}, {"object": - "TrackingDetail", "message": "Delivered", "description": null, "status": "delivered", - "status_detail": "arrived_at_destination", "datetime": "2023-04-19T06:25:33Z", - "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", - "city": "CHARLESTON", "state": "SC", "country": null, "zip": "29407"}}], "fees": + "message": "Shipping Label Created", "description": "", "status": "pre_transit", + "status_detail": "status_update", "datetime": "2025-02-07T08:25:26Z", "source": + "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "NORTH HOUSTON", "state": "TX", "country": - null, "zip": "77315"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - {"object": "TrackingLocation", "city": "CHARLESTON", "state": "SC", "country": - null, "zip": "29407"}, "guaranteed_delivery_date": null, "alternate_identifier": - null, "initial_delivery_attempt": "2023-04-19T06:25:33Z"}, "public_url": "https://track.easypost.com/djE6dHJrX2VlMDI2NWY3MDkxNjQxYzk5NTM4Yjc4N2NhZDU2ZTFl"}], + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "public_url": "https://track.easypost.com/djE6dHJrX2U3ZThmMTQzZjNlYjQwZDM4YmU5NTYyZTM3NjdjMzZh"}], "has_more": true}' headers: cache-control: - private, no-cache, no-store content-length: - - '18545' + - '8176' content-type: - application/json; charset=utf-8 - etag: - - W/"41d05cf444b93214ec9e6d01baa076df" expires: - '0' pragma: @@ -555,25 +308,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e076463b2d4e787383e002bd75f + - 8e8eb62967c9fc2ae2b97ef30018b8a0 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.146037' + - '0.185605' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_tracker_retrieve.yaml b/tests/cassettes/test_tracker_retrieve.yaml index 2a748524..3ef7c974 100644 --- a/tests/cassettes/test_tracker_retrieve.yaml +++ b/tests/cassettes/test_tracker_retrieve.yaml @@ -20,19 +20,19 @@ interactions: uri: https://api.easypost.com/v2/trackers response: body: - string: '{"id": "trk_8de54ec569444a0eabd75bd9dcecc96b", "object": "Tracker", + string: '{"id": "trk_e7e8f143f3eb40d38be9562e3767c36a", "object": "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:44:03Z", "updated_at": - "2023-05-16T16:44:03Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:44:03Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + "status_detail": "status_update", "created_at": "2025-03-06T19:48:26Z", "updated_at": + "2025-03-06T19:48:26Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:26Z", "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", - "description": null, "status": "pre_transit", "status_detail": "status_update", - "datetime": "2023-04-16T16:44:03Z", "source": "USPS", "carrier_code": null, + "description": "", "status": "pre_transit", "status_detail": "status_update", + "datetime": "2025-02-06T19:48:26Z", "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": - "Shipping Label Created", "description": null, "status": "pre_transit", "status_detail": - "status_update", "datetime": "2023-04-17T05:21:03Z", "source": "USPS", "carrier_code": - null, "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:26Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}}], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": @@ -40,20 +40,18 @@ interactions: "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": null}, "finalized": - true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrXzhkZTU0ZWM1Njk0NDRhMGVhYmQ3NWJkOWRjZWNjOTZi"}' + true, "is_return": false, "public_url": "https://track.easypost.com/djE6dHJrX2U3ZThmMTQzZjNlYjQwZDM4YmU5NTYyZTM3NjdjMzZh"}' headers: cache-control: - private, no-cache, no-store content-length: - - '1626' + - '1618' content-type: - application/json; charset=utf-8 - etag: - - W/"0f24163af2b3c881a3e3e628f58fdd51" expires: - '0' location: - - /api/v2/trackers/trk_8de54ec569444a0eabd75bd9dcecc96b + - /api/v2/trackers/trk_e7e8f143f3eb40d38be9562e3767c36a pragma: - no-cache referrer-policy: @@ -69,20 +67,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e056463b2d3e787383c002bd6e6 + - 8e8eb62667c9fc29e2b97ef10018b7e5 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.056516' + - '0.073847' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -102,40 +100,37 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/trackers/trk_8de54ec569444a0eabd75bd9dcecc96b + uri: https://api.easypost.com/v2/trackers/trk_e7e8f143f3eb40d38be9562e3767c36a response: body: - string: '{"id": "trk_8de54ec569444a0eabd75bd9dcecc96b", "object": "Tracker", + string: '{"id": "trk_e7e8f143f3eb40d38be9562e3767c36a", "object": "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", - "status_detail": "status_update", "created_at": "2023-05-16T16:44:03Z", "updated_at": - "2023-05-16T16:44:03Z", "signed_by": null, "weight": null, "est_delivery_date": - "2023-05-16T16:44:03Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + "status_detail": "status_update", "created_at": "2025-03-06T19:48:26Z", "updated_at": + "2025-03-06T19:48:26Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-03-06T19:48:26Z", "shipment_id": null, "carrier": "USPS", "tracking_details": [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", - "description": null, "status": "pre_transit", "status_detail": "status_update", - "datetime": "2023-04-16T16:44:03Z", "source": "USPS", "carrier_code": null, + "description": "", "status": "pre_transit", "status_detail": "status_update", + "datetime": "2025-02-06T19:48:26Z", "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", "city": null, "state": null, "country": null, "zip": null}}, {"object": "TrackingDetail", "message": - "Shipping Label Created", "description": null, "status": "pre_transit", "status_detail": - "status_update", "datetime": "2023-04-17T05:21:03Z", "source": "USPS", "carrier_code": - null, "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", - "state": "TX", "country": null, "zip": "77063"}}], "fees": [{"object": "Fee", - "type": "TrackerFee", "amount": "0.02000", "charged": false, "refunded": false}], - "carrier_detail": {"object": "CarrierDetail", "service": "First-Class Package - Service", "container_type": null, "est_delivery_date_local": null, "est_delivery_time_local": - null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": - {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": - null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": - null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": - null}, "public_url": "https://track.easypost.com/djE6dHJrXzhkZTU0ZWM1Njk0NDRhMGVhYmQ3NWJkOWRjZWNjOTZi"}' + "Shipping Label Created", "description": "", "status": "pre_transit", "status_detail": + "status_update", "datetime": "2025-02-07T08:25:26Z", "source": "USPS", "carrier_code": + "", "tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}}], "fees": [], "carrier_detail": + {"object": "CarrierDetail", "service": "First-Class Package Service", "container_type": + null, "est_delivery_date_local": null, "est_delivery_time_local": null, "origin_location": + "HOUSTON TX, 77001", "origin_tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "destination_location": + "CHARLESTON SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "public_url": + "https://track.easypost.com/djE6dHJrX2U3ZThmMTQzZjNlYjQwZDM4YmU5NTYyZTM3NjdjMzZh"}' headers: cache-control: - private, no-cache, no-store content-length: - - '1689' + - '1593' content-type: - application/json; charset=utf-8 - etag: - - W/"f1dbd24a8dbbf4bd1054a2894a0973fe" expires: - '0' pragma: @@ -153,20 +148,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e056463b2d3e787383c002bd6f1 + - 8e8eb62667c9fc29e2b97ef10018b806 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.045946' + - '0.053849' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_tracker_retrieve_batch.yaml b/tests/cassettes/test_tracker_retrieve_batch.yaml new file mode 100644 index 00000000..56316877 --- /dev/null +++ b/tests/cassettes/test_tracker_retrieve_batch.yaml @@ -0,0 +1,180 @@ +interactions: +- request: + body: '{"tracker": {"tracking_code": "EZ1000000001"}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '46' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/trackers + response: + body: + string: '{"id": "trk_52d78046d6a14e8b92af8b8546080a05", "object": "Tracker", + "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-11-05T21:59:07Z", "updated_at": + "2025-11-05T21:59:07Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-11-05T21:59:07Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", + "description": null, "status": "pre_transit", "status_detail": "status_update", + "datetime": "2025-10-05T21:59:07Z", "source": "USPS", "carrier_code": null, + "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}, "est_delivery_date": null}, {"object": + "TrackingDetail", "message": "Shipping Label Created", "description": null, + "status": "pre_transit", "status_detail": "status_update", "datetime": "2025-10-06T10:36:07Z", + "source": "USPS", "carrier_code": null, "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "est_delivery_date": + null}], "carrier_detail": {"object": "CarrierDetail", "service": "First-Class + Package Service", "container_type": null, "est_delivery_date_local": null, + "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", "origin_tracking_location": + {"object": "TrackingLocation", "city": "HOUSTON", "state": "TX", "country": + null, "zip": "77063"}, "destination_location": "CHARLESTON SC, 29401", "destination_tracking_location": + null, "guaranteed_delivery_date": null, "alternate_identifier": null, "initial_delivery_attempt": + null}, "delivery_evidence": [], "finalized": true, "is_return": false, "public_url": + "https://track.easypost.com/djE6dHJrXzUyZDc4MDQ2ZDZhMTRlOGI5MmFmOGI4NTQ2MDgwYTA1", + "fees": [{"object": "Fee", "type": "TrackerFee", "amount": "0.02000", "charged": + false, "refunded": false}]}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1797' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/trackers/trk_52d78046d6a14e8b92af8b8546080a05 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 38fab072690bc8aae7994c3e024d2342 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb64nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq c0061e0a2e + - extlb2nuq cbbd141214 + x-runtime: + - '0.122872' + x-version-label: + - easypost-202511052124-83d556159a-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +- request: + body: '{"tracking_codes": ["EZ1000000001"]}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '36' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/trackers/batch + response: + body: + string: '{"trackers": [{"id": "trk_52d78046d6a14e8b92af8b8546080a05", "object": + "Tracker", "mode": "test", "tracking_code": "EZ1000000001", "status": "pre_transit", + "status_detail": "status_update", "created_at": "2025-11-05T21:59:07Z", "updated_at": + "2025-11-05T21:59:07Z", "signed_by": null, "weight": null, "est_delivery_date": + "2025-11-05T21:59:07Z", "shipment_id": null, "carrier": "USPS", "tracking_details": + [{"object": "TrackingDetail", "message": "Pre-Shipment Info Sent to USPS", + "description": "", "status": "pre_transit", "status_detail": "status_update", + "datetime": "2025-10-05T21:59:07Z", "source": "USPS", "carrier_code": "", + "tracking_location": {"object": "TrackingLocation", "city": null, "state": + null, "country": null, "zip": null}, "est_delivery_date": null}, {"object": + "TrackingDetail", "message": "Shipping Label Created", "description": "", + "status": "pre_transit", "status_detail": "status_update", "datetime": "2025-10-06T10:36:07Z", + "source": "USPS", "carrier_code": "", "tracking_location": {"object": "TrackingLocation", + "city": "HOUSTON", "state": "TX", "country": null, "zip": "77063"}, "est_delivery_date": + null}], "fees": [{"object": "Fee", "type": "TrackerFee", "amount": "0.02000", + "charged": true, "refunded": false}], "carrier_detail": {"object": "CarrierDetail", + "service": "First-Class Package Service", "container_type": null, "est_delivery_date_local": + null, "est_delivery_time_local": null, "origin_location": "HOUSTON TX, 77001", + "origin_tracking_location": {"object": "TrackingLocation", "city": "HOUSTON", + "state": "TX", "country": null, "zip": "77063"}, "destination_location": "CHARLESTON + SC, 29401", "destination_tracking_location": null, "guaranteed_delivery_date": + null, "alternate_identifier": null, "initial_delivery_attempt": null}, "delivery_evidence": + [], "public_url": "https://track.easypost.com/djE6dHJrXzUyZDc4MDQ2ZDZhMTRlOGI5MmFmOGI4NTQ2MDgwYTA1"}], + "has_more": false}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1785' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 38fab075690bc8abe7994c40024d239e + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb55nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq c0061e0a2e + - extlb2nuq cbbd141214 + x-runtime: + - '0.055965' + x-version-label: + - easypost-202511052124-83d556159a-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_unsubscribe_hooks.yaml b/tests/cassettes/test_unsubscribe_hooks.yaml new file mode 100644 index 00000000..ca0311bf --- /dev/null +++ b/tests/cassettes/test_unsubscribe_hooks.yaml @@ -0,0 +1,72 @@ +interactions: +- request: + body: '{"parcel": {"length": 10, "width": 8, "height": 4, "weight": 15.4}}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '67' + Content-Type: + - application/json + authorization: + - + user-agent: + - + method: POST + uri: https://api.easypost.com/v2/parcels + response: + body: + string: '{"id": "prcl_660cf465fc394c1287e6277c20562e27", "object": "Parcel", + "created_at": "2025-03-06T19:48:21Z", "updated_at": "2025-03-06T19:48:21Z", + "length": 10.0, "width": 8.0, "height": 4.0, "predefined_package": null, "weight": + 15.4, "mode": "test"}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '229' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + location: + - /api/v2/parcels/prcl_660cf465fc394c1287e6277c20562e27 + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62767c9fc05e2b97b1500188fbe + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb39nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.026539' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 201 + message: Created +version: 1 diff --git a/tests/cassettes/test_user_all_children.yaml b/tests/cassettes/test_user_all_children.yaml new file mode 100644 index 00000000..9f162ca4 --- /dev/null +++ b/tests/cassettes/test_user_all_children.yaml @@ -0,0 +1,77 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/users/children?page_size=5 + response: + body: + string: '{"children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "", "verified": true, "created_at": "2023-12-11T17:13:38Z"}, + {"id": "user_437e724f37de412db6df8821968d8d3c", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User2", "phone_number": + "", "verified": true, "created_at": "2023-12-11T17:13:43Z"}, {"id": + "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", + "name": "Child Account Name22", "phone_number": "", "verified": + true, "created_at": "2024-01-04T19:56:21Z"}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "", "verified": true, "created_at": + "2024-01-19T21:42:21Z"}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "", "verified": true, "created_at": "2024-01-19T21:44:18Z"}], + "has_more": false}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1114' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62c67c9fc2ee2b97f120018bbfc + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb55nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.081047' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_user_children_get_next_page.yaml b/tests/cassettes/test_user_children_get_next_page.yaml new file mode 100644 index 00000000..a9e31e01 --- /dev/null +++ b/tests/cassettes/test_user_children_get_next_page.yaml @@ -0,0 +1,77 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + authorization: + - + user-agent: + - + method: GET + uri: https://api.easypost.com/v2/users/children?page_size=5 + response: + body: + string: '{"children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "", "verified": true, "created_at": "2023-12-11T17:13:38Z"}, + {"id": "user_437e724f37de412db6df8821968d8d3c", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User2", "phone_number": + "", "verified": true, "created_at": "2023-12-11T17:13:43Z"}, {"id": + "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", + "name": "Child Account Name22", "phone_number": "", "verified": + true, "created_at": "2024-01-04T19:56:21Z"}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "", "verified": true, "created_at": + "2024-01-19T21:42:21Z"}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "", "verified": true, "created_at": "2024-01-19T21:44:18Z"}], + "has_more": false}' + headers: + cache-control: + - private, no-cache, no-store + content-length: + - '1114' + content-type: + - application/json; charset=utf-8 + expires: + - '0' + pragma: + - no-cache + referrer-policy: + - strict-origin-when-cross-origin + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-backend: + - easypost + x-content-type-options: + - nosniff + x-download-options: + - noopen + x-ep-request-uuid: + - 8e8eb62867c9fc2ee2b97f130018bc27 + x-frame-options: + - SAMEORIGIN + x-node: + - bigweb40nuq + x-permitted-cross-domain-policies: + - none + x-proxied: + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 + x-runtime: + - '0.222282' + x-version-label: + - easypost-202503061913-8f39069a2d-master + x-xss-protection: + - 1; mode=block + status: + code: 200 + message: OK +version: 1 diff --git a/tests/cassettes/test_user_create.yaml b/tests/cassettes/test_user_create.yaml index b175ff3e..ce9873d9 100644 --- a/tests/cassettes/test_user_create.yaml +++ b/tests/cassettes/test_user_create.yaml @@ -20,14 +20,14 @@ interactions: uri: https://api.easypost.com/v2/users response: body: - string: '{"id": "user_ac05e2551db340168b5d6ecc5cd42555", "object": "User", "parent_id": + string: '{"id": "user_609e5b8141864b9f877f8c4ef6e85685", "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User", "phone_number": - "", "verified": true, "created_at": "2023-05-16T17:00:53Z", "default_carbon_offset": + "", "verified": true, "created_at": "2025-03-06T19:48:59Z", "default_carbon_offset": false, "has_elevate_access": false, "children": [], "api_keys": [{"object": - "ApiKey", "key": "", "mode": "test", "created_at": "2023-05-16T17:00:53Z", - "active": true, "id": "ak_e7be6b181c294e03a565b11a63e5c3ff"}, {"object": "ApiKey", - "key": "", "mode": "production", "created_at": "2023-05-16T17:00:53Z", - "active": true, "id": "ak_374b72e593704d20b2935ecb209cca4e"}]}' + "ApiKey", "key": "", "mode": "test", "created_at": "2025-03-06T19:48:59Z", + "active": true, "id": "ak_11b4fc4f06ec42939c4996055b9f5565"}, {"object": "ApiKey", + "key": "", "mode": "production", "created_at": "2025-03-06T19:48:59Z", + "active": true, "id": "ak_bb682f6cbcc545458268103db6bccc80"}]}' headers: cache-control: - private, no-cache, no-store @@ -35,8 +35,6 @@ interactions: - '691' content-type: - application/json; charset=utf-8 - etag: - - W/"1111a1c2566ee91693d65041b3e68349" expires: - '0' pragma: @@ -54,20 +52,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e086463b6c4e787407c002d8a1e + - 8e8eb62b67c9fc2ae2b97ef40018b8ee x-frame-options: - SAMEORIGIN x-node: - - bigweb9nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.849864' + - '0.455733' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -89,7 +87,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/users/user_ac05e2551db340168b5d6ecc5cd42555 + uri: https://api.easypost.com/v2/users/user_609e5b8141864b9f877f8c4ef6e85685 response: body: string: '' @@ -111,20 +109,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e086463b6c5e787407c002d8aa0 + - 8e8eb62b67c9fc2be2b97ef40018b977 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.264345' + - '0.052111' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_user_delete.yaml b/tests/cassettes/test_user_delete.yaml index f97d7065..a110ca7d 100644 --- a/tests/cassettes/test_user_delete.yaml +++ b/tests/cassettes/test_user_delete.yaml @@ -20,14 +20,14 @@ interactions: uri: https://api.easypost.com/v2/users response: body: - string: '{"id": "user_96f5c85622a34e6fba1a24b70d7cac9b", "object": "User", "parent_id": + string: '{"id": "user_52052a31d26445e39e298b175d00f70a", "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test User", "phone_number": - "", "verified": true, "created_at": "2023-05-16T17:00:55Z", "default_carbon_offset": + "", "verified": true, "created_at": "2025-03-06T19:49:01Z", "default_carbon_offset": false, "has_elevate_access": false, "children": [], "api_keys": [{"object": - "ApiKey", "key": "", "mode": "test", "created_at": "2023-05-16T17:00:55Z", - "active": true, "id": "ak_e11f2cd9b9cd42e9ac388091d27404db"}, {"object": "ApiKey", - "key": "", "mode": "production", "created_at": "2023-05-16T17:00:55Z", - "active": true, "id": "ak_d6beedb898af426880e2af148d3993fb"}]}' + "ApiKey", "key": "", "mode": "test", "created_at": "2025-03-06T19:49:01Z", + "active": true, "id": "ak_4572bd6453034cfd9308739d57fd59b5"}, {"object": "ApiKey", + "key": "", "mode": "production", "created_at": "2025-03-06T19:49:01Z", + "active": true, "id": "ak_4ccbc18c84cc4b0692ef0bf99361f93d"}]}' headers: cache-control: - private, no-cache, no-store @@ -35,8 +35,6 @@ interactions: - '691' content-type: - application/json; charset=utf-8 - etag: - - W/"847204556f926562bba422da6cf722a2" expires: - '0' pragma: @@ -54,20 +52,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e086463b6c7e7874081002d8b71 + - 8e8eb62967c9fc2ce2b97f100018baf3 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb36nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.827802' + - '0.472353' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -89,7 +87,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/users/user_96f5c85622a34e6fba1a24b70d7cac9b + uri: https://api.easypost.com/v2/users/user_52052a31d26445e39e298b175d00f70a response: body: string: '' @@ -111,20 +109,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e086463b6c8e7874081002d8bed + - 8e8eb62967c9fc2de2b97f100018bb54 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb57nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.121275' + - '0.150000' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_user_retrieve.yaml b/tests/cassettes/test_user_retrieve.yaml index 9118105a..ddcc7b4b 100644 --- a/tests/cassettes/test_user_retrieve.yaml +++ b/tests/cassettes/test_user_retrieve.yaml @@ -17,22 +17,38 @@ interactions: response: body: string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": - null, "name": "EasyPost Python Client Library Tests", "phone_number": "", - "verified": true, "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": - false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": - "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", - "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": - "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": - "1.00", "email": "", "children": []}' + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '601' + - '2010' content-type: - application/json; charset=utf-8 - etag: - - W/"37fad0de2fa69ce547baa7b7ecd8f745" expires: - '0' pragma: @@ -50,20 +66,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463b6c6e787407d002d8adc + - 8e8eb62967c9fc2be2b97ef50018b99b x-frame-options: - SAMEORIGIN x-node: - - bigweb6nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.037841' + - '0.179651' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -87,22 +103,38 @@ interactions: response: body: string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": - null, "name": "EasyPost Python Client Library Tests", "phone_number": "", - "verified": true, "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": - false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": - "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", - "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": - "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": - "1.00", "email": "", "children": []}' + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '601' + - '2010' content-type: - application/json; charset=utf-8 - etag: - - W/"37fad0de2fa69ce547baa7b7ecd8f745" expires: - '0' pragma: @@ -120,20 +152,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463b6c6e787407d002d8ae8 + - 8e8eb62967c9fc2be2b97ef50018b9d2 x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.035436' + - '0.123282' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_user_retrieve_me.yaml b/tests/cassettes/test_user_retrieve_me.yaml index b08e8a72..89fc0edc 100644 --- a/tests/cassettes/test_user_retrieve_me.yaml +++ b/tests/cassettes/test_user_retrieve_me.yaml @@ -17,22 +17,38 @@ interactions: response: body: string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": - null, "name": "EasyPost Python Client Library Tests", "phone_number": "", - "verified": true, "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": - false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": - "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", - "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": - "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": - "1.00", "email": "", "children": []}' + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '601' + - '2010' content-type: - application/json; charset=utf-8 - etag: - - W/"37fad0de2fa69ce547baa7b7ecd8f745" expires: - '0' pragma: @@ -50,20 +66,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463b6c6e787407f002d8b2e + - 8e8eb62667c9fc2ce2b97f0e0018ba3f x-frame-options: - SAMEORIGIN x-node: - - bigweb11nuq + - bigweb40nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.036515' + - '0.137121' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_user_retrieve_no_id.yaml b/tests/cassettes/test_user_retrieve_no_id.yaml index 14cc80c6..64dc1c7a 100644 --- a/tests/cassettes/test_user_retrieve_no_id.yaml +++ b/tests/cassettes/test_user_retrieve_no_id.yaml @@ -17,22 +17,38 @@ interactions: response: body: string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": - null, "name": "EasyPost Python Client Library Tests", "phone_number": "", - "verified": true, "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": - false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": - "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", - "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": - "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": - "1.00", "email": "", "children": []}' + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '601' + - '2010' content-type: - application/json; charset=utf-8 - etag: - - W/"37fad0de2fa69ce547baa7b7ecd8f745" expires: - '0' pragma: @@ -50,20 +66,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e086463b6c6e787407e002d8b09 + - 8e8eb62c67c9fc2be2b97ef60018ba07 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.029911' + - '0.085156' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_user_update.yaml b/tests/cassettes/test_user_update.yaml index 3e271e8f..63acf6a5 100644 --- a/tests/cassettes/test_user_update.yaml +++ b/tests/cassettes/test_user_update.yaml @@ -17,22 +17,38 @@ interactions: response: body: string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": - null, "name": "EasyPost Python Client Library Tests", "phone_number": "", - "verified": true, "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": - false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": - "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", - "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": - "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": - "1.00", "email": "", "children": []}' + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '601' + - '2010' content-type: - application/json; charset=utf-8 - etag: - - W/"37fad0de2fa69ce547baa7b7ecd8f745" expires: - '0' pragma: @@ -50,20 +66,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e46463b756e787443c002a4014 + - 8e8eb62867c9fc2ce2b97f0f0018ba94 x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.031681' + - '0.084156' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -97,16 +113,32 @@ interactions: "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": - "", "children": []}' + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '573' + - '2010' content-type: - application/json; charset=utf-8 - etag: - - W/"4d7e243262cf39546f0f5363c1c1e8e0" expires: - '0' pragma: @@ -124,20 +156,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - 23bee7e46463b756e787443c002a4022 + - 8e8eb62867c9fc2ce2b97f0f0018babd x-frame-options: - SAMEORIGIN x-node: - - bigweb8nuq + - bigweb59nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb2nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.215579' + - '0.114779' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_user_update_brand.yaml b/tests/cassettes/test_user_update_brand.yaml index 5ffab8d9..37d0ce49 100644 --- a/tests/cassettes/test_user_update_brand.yaml +++ b/tests/cassettes/test_user_update_brand.yaml @@ -17,22 +17,38 @@ interactions: response: body: string: '{"id": "user_54356a6b96c940d8913961a3c7b909f2", "object": "User", "parent_id": - null, "name": "EasyPost Python Client Library Tests", "phone_number": "", - "verified": true, "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": - false, "has_elevate_access": false, "balance": "0.00000", "price_per_shipment": - "0.00000", "recharge_amount": "100.00", "secondary_recharge_amount": "100.00", - "recharge_threshold": "0.00", "has_billing_method": false, "cc_fee_rate": - "0.03", "default_insurance_amount": null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": - "1.00", "email": "", "children": []}' + null, "name": "New Name", "phone_number": "", "verified": true, + "created_at": "2017-03-01T03:01:34Z", "default_carbon_offset": false, "has_elevate_access": + false, "balance": "0.00000", "price_per_shipment": "0.00000", "recharge_amount": + "100.00", "secondary_recharge_amount": "100.00", "recharge_threshold": "0.00", + "has_billing_method": false, "cc_fee_rate": "0.03", "default_insurance_amount": + null, "insurance_fee_rate": "0.01", "insurance_fee_minimum": "1.00", "email": + "", "children": [{"id": "user_584be78af2f141e988b6c60dda9dd8fd", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User2", "phone_number": "8005550100", "verified": true, "created_at": + "2023-12-11T17:13:38Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_437e724f37de412db6df8821968d8d3c", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User2", "phone_number": "8005550100", "verified": true, "created_at": "2023-12-11T17:13:43Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}, + {"id": "user_2553102e90de43dea0b9fa7f8c8d7e33", "object": "User", "parent_id": + "user_54356a6b96c940d8913961a3c7b909f2", "name": "Child Account Name22", "phone_number": + "8005550100", "verified": true, "created_at": "2024-01-04T19:56:21Z", "default_carbon_offset": + false, "has_elevate_access": false, "children": []}, {"id": "user_31754439d4524fbb8867d138de537e12", + "object": "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": + "Test User", "phone_number": "8005550100", "verified": true, "created_at": + "2024-01-19T21:42:21Z", "default_carbon_offset": false, "has_elevate_access": + false, "children": []}, {"id": "user_d26377e80676431d88c17d8b140d365a", "object": + "User", "parent_id": "user_54356a6b96c940d8913961a3c7b909f2", "name": "Test + User", "phone_number": "8005550100", "verified": true, "created_at": "2024-01-19T21:44:18Z", + "default_carbon_offset": false, "has_elevate_access": false, "children": []}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '601' + - '2010' content-type: - application/json; charset=utf-8 - etag: - - W/"37fad0de2fa69ce547baa7b7ecd8f745" expires: - '0' pragma: @@ -45,25 +61,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e076463b6c9e787409d002d8c64 + - 8e8eb62b67c9fc2de2b97f110018bba0 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb32nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.103212' + - '0.148950' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -90,20 +108,17 @@ interactions: uri: https://api.easypost.com/v2/users/user_54356a6b96c940d8913961a3c7b909f2/brand response: body: - string: '{"id": "brd_79967d34dc894866850bc8342c84dc41", "color": "#123456", - "logo": "https://assets.easypost.com/assets/images/branding/easypost-primary-logo.7324aa54b64b34d6cd70ca5ba4d1842d.svg", - "logo_href": "https://www.easypost.com", "name": "EasyPost", "ad": null, "ad_href": - null, "object": "Brand", "user_id": "user_54356a6b96c940d8913961a3c7b909f2", - "background_color": "#123456", "theme": "theme1"}' + string: '{"ad": null, "ad_href": null, "background_color": "#FFFFFF", "color": + "#123456", "id": "brd_79967d34dc894866850bc8342c84dc41", "logo": "https://assets.easypost.com/assets/images/branding/easypost-primary-logo.7324aa54b64b34d6cd70ca5ba4d1842d.svg", + "logo_href": "https://www.easypost.com", "name": "EasyPost", "object": "Brand", + "theme": "theme1", "user_id": "user_54356a6b96c940d8913961a3c7b909f2"}' headers: cache-control: - private, no-cache, no-store content-length: - - '377' + - '378' content-type: - application/json; charset=utf-8 - etag: - - W/"3ed4a169f34d67d2cd97fcacca1fbab0" expires: - '0' pragma: @@ -121,20 +136,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e076463b6c9e787409d002d8c80 + - 8e8eb62b67c9fc2de2b97f110018bbc4 x-frame-options: - SAMEORIGIN x-node: - - bigweb5nuq + - bigweb35nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.021203' + - '0.092006' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_webhook_all.yaml b/tests/cassettes/test_webhook_all.yaml index 6ca47ca8..e1911c81 100644 --- a/tests/cassettes/test_webhook_all.yaml +++ b/tests/cassettes/test_webhook_all.yaml @@ -24,8 +24,6 @@ interactions: - '15' content-type: - application/json; charset=utf-8 - etag: - - W/"d03ff1e2df7ad33907b2086ec5f9e0a9" expires: - '0' pragma: @@ -38,27 +36,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e016463ba57e78750fc002f5534 + - 8e8eb62c67c9fc30e2b97f160018be35 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.021266' + - '0.023394' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_webhook_create.yaml b/tests/cassettes/test_webhook_create.yaml index 5f8dff13..784a7f03 100644 --- a/tests/cassettes/test_webhook_create.yaml +++ b/tests/cassettes/test_webhook_create.yaml @@ -1,6 +1,7 @@ interactions: - request: - body: '{"webhook": {"url": "http://example.com"}}' + body: '{"webhook": {"url": "http://example.com", "webhook_secret": "s\u00e9cret", + "custom_headers": [{"name": "test", "value": "header"}]}}' headers: Accept: - '*/*' @@ -9,7 +10,7 @@ interactions: Connection: - keep-alive Content-Length: - - '42' + - '132' Content-Type: - application/json authorization: @@ -20,18 +21,16 @@ interactions: uri: https://api.easypost.com/v2/webhooks response: body: - string: '{"id": "hook_578ffa82f40d11ed8c1c191209204fb8", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T17:16:06Z", - "disabled_at": null}' + string: '{"id": "hook_0dfff13cfac411ef87a6010e985f89d4", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:49:03Z", + "disabled_at": null, "custom_headers": [{"name": "test", "value": "header"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '213' content-type: - application/json; charset=utf-8 - etag: - - W/"d3b63c8e76bcda450658d4094d8d0ccc" expires: - '0' pragma: @@ -49,20 +48,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e056463ba55e7874dec002f5407 + - 8e8eb62a67c9fc2ee2b97f140018bc8b x-frame-options: - SAMEORIGIN x-node: - - bigweb2nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.146285' + - '0.392111' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -84,7 +83,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/webhooks/hook_578ffa82f40d11ed8c1c191209204fb8 + uri: https://api.easypost.com/v2/webhooks/hook_0dfff13cfac411ef87a6010e985f89d4 response: body: string: '{}' @@ -95,8 +94,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -114,20 +111,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e056463ba56e7874dec002f5428 + - 8e8eb62a67c9fc2fe2b97f140018bd0f x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb55nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.386456' + - '0.280536' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_webhook_delete.yaml b/tests/cassettes/test_webhook_delete.yaml index 3c3ef268..44b48794 100644 --- a/tests/cassettes/test_webhook_delete.yaml +++ b/tests/cassettes/test_webhook_delete.yaml @@ -20,18 +20,16 @@ interactions: uri: https://api.easypost.com/v2/webhooks response: body: - string: '{"id": "hook_59f616f8f40d11ed9ffb13df0888d030", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T17:16:10Z", - "disabled_at": null}' + string: '{"id": "hook_0fcc09e2fac411efbde06158eced6bfc", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:49:06Z", + "disabled_at": null, "custom_headers": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '181' content-type: - application/json; charset=utf-8 - etag: - - W/"9b2f3375e1a8caf2420dc0624fed25db" expires: - '0' pragma: @@ -44,25 +42,27 @@ interactions: - chunked x-backend: - easypost + x-canary: + - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e066463ba59e78750fe002f5664 + - 8e8eb62667c9fc31e2b97f2f0018bf99 x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb43nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.150771' + - '0.176059' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -84,7 +84,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/webhooks/hook_59f616f8f40d11ed9ffb13df0888d030 + uri: https://api.easypost.com/v2/webhooks/hook_0fcc09e2fac411efbde06158eced6bfc response: body: string: '{}' @@ -95,8 +95,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -114,20 +112,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463ba5ae78750fe002f5685 + - 8e8eb62667c9fc31e2b97f2f0018bfc8 x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb53nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.394054' + - '0.375339' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_webhook_retrieve.yaml b/tests/cassettes/test_webhook_retrieve.yaml index 62504da8..3e7164ec 100644 --- a/tests/cassettes/test_webhook_retrieve.yaml +++ b/tests/cassettes/test_webhook_retrieve.yaml @@ -20,18 +20,16 @@ interactions: uri: https://api.easypost.com/v2/webhooks response: body: - string: '{"id": "hook_58353ec0f40d11ed945419a4606044e7", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T17:16:07Z", - "disabled_at": null}' + string: '{"id": "hook_0e83e2dafac411efac9a1daf3c26a49f", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:49:04Z", + "disabled_at": null, "custom_headers": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '181' content-type: - application/json; charset=utf-8 - etag: - - W/"b1f8350fb1fef764dcc44d7d26016b07" expires: - '0' pragma: @@ -49,20 +47,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e016463ba56e78750fb002f5496 + - 8e8eb62a67c9fc2fe2b97f150018bd9a x-frame-options: - SAMEORIGIN x-node: - - bigweb12nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.189105' + - '0.142343' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -82,21 +80,19 @@ interactions: user-agent: - method: GET - uri: https://api.easypost.com/v2/webhooks/hook_58353ec0f40d11ed945419a4606044e7 + uri: https://api.easypost.com/v2/webhooks/hook_0e83e2dafac411efac9a1daf3c26a49f response: body: - string: '{"id": "hook_58353ec0f40d11ed945419a4606044e7", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T17:16:07Z", - "disabled_at": null}' + string: '{"id": "hook_0e83e2dafac411efac9a1daf3c26a49f", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:49:04Z", + "disabled_at": null, "custom_headers": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '181' content-type: - application/json; charset=utf-8 - etag: - - W/"b1f8350fb1fef764dcc44d7d26016b07" expires: - '0' pragma: @@ -114,20 +110,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e016463ba57e78750fb002f54cb + - 8e8eb62a67c9fc2fe2b97f150018bdd7 x-frame-options: - SAMEORIGIN x-node: - - bigweb4nuq + - bigweb38nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb1nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.026276' + - '0.030906' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -149,7 +145,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/webhooks/hook_58353ec0f40d11ed945419a4606044e7 + uri: https://api.easypost.com/v2/webhooks/hook_0e83e2dafac411efac9a1daf3c26a49f response: body: string: '{}' @@ -160,8 +156,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -174,27 +168,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e016463ba57e78750fb002f54dd + - 8e8eb62a67c9fc2fe2b97f150018bde4 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb54nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.327814' + - '0.218994' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/cassettes/test_webhook_update.yaml b/tests/cassettes/test_webhook_update.yaml index 55b96e32..bfe45cb1 100644 --- a/tests/cassettes/test_webhook_update.yaml +++ b/tests/cassettes/test_webhook_update.yaml @@ -20,18 +20,16 @@ interactions: uri: https://api.easypost.com/v2/webhooks response: body: - string: '{"id": "hook_58f6b762f40d11ed9f8d43d6e343546b", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T17:16:08Z", - "disabled_at": null}' + string: '{"id": "hook_0efb3bf0fac411ef8ef87bb79a980ca0", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:49:04Z", + "disabled_at": null, "custom_headers": []}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '181' content-type: - application/json; charset=utf-8 - etag: - - W/"7514fb79d1a9b3bf25ce1826286c214b" expires: - '0' pragma: @@ -49,27 +47,28 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463ba58e78750fd002f555a + - 8e8eb62767c9fc30e2b97f170018be5e x-frame-options: - SAMEORIGIN x-node: - - bigweb1nuq + - bigweb41nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.163981' + - '0.159288' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: code: 201 message: Created - request: - body: '{"webhook": {}}' + body: '{"webhook_secret": "s\u00e9cret", "custom_headers": [{"name": "test", "value": + "header"}]}' headers: Accept: - '*/*' @@ -78,7 +77,7 @@ interactions: Connection: - keep-alive Content-Length: - - '15' + - '90' Content-Type: - application/json authorization: @@ -86,21 +85,19 @@ interactions: user-agent: - method: PATCH - uri: https://api.easypost.com/v2/webhooks/hook_58f6b762f40d11ed9f8d43d6e343546b + uri: https://api.easypost.com/v2/webhooks/hook_0efb3bf0fac411ef8ef87bb79a980ca0 response: body: - string: '{"id": "hook_58f6b762f40d11ed9f8d43d6e343546b", "object": "Webhook", - "mode": "test", "url": "http://example.com", "created_at": "2023-05-16T17:16:08Z", - "disabled_at": null}' + string: '{"id": "hook_0efb3bf0fac411ef8ef87bb79a980ca0", "object": "Webhook", + "mode": "test", "url": "http://example.com", "created_at": "2025-03-06T19:49:04Z", + "disabled_at": null, "custom_headers": [{"name": "test", "value": "header"}]}' headers: cache-control: - private, no-cache, no-store content-length: - - '161' + - '213' content-type: - application/json; charset=utf-8 - etag: - - W/"7514fb79d1a9b3bf25ce1826286c214b" expires: - '0' pragma: @@ -113,27 +110,25 @@ interactions: - chunked x-backend: - easypost - x-canary: - - direct x-content-type-options: - nosniff x-download-options: - noopen x-ep-request-uuid: - - de846e066463ba58e78750fd002f55a3 + - 8e8eb62767c9fc30e2b97f170018be92 x-frame-options: - SAMEORIGIN x-node: - - bigweb7nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb4nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.487077' + - '0.701134' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: @@ -155,7 +150,7 @@ interactions: user-agent: - method: DELETE - uri: https://api.easypost.com/v2/webhooks/hook_58f6b762f40d11ed9f8d43d6e343546b + uri: https://api.easypost.com/v2/webhooks/hook_0efb3bf0fac411ef8ef87bb79a980ca0 response: body: string: '{}' @@ -166,8 +161,6 @@ interactions: - '2' content-type: - application/json; charset=utf-8 - etag: - - W/"44136fa355b3678a1146ad16f7e8649e" expires: - '0' pragma: @@ -185,20 +178,20 @@ interactions: x-download-options: - noopen x-ep-request-uuid: - - de846e066463ba59e78750fd002f55fe + - 8e8eb62767c9fc31e2b97f170018bf41 x-frame-options: - SAMEORIGIN x-node: - - bigweb3nuq + - bigweb34nuq x-permitted-cross-domain-policies: - none x-proxied: - - intlb2nuq a29e4ad05c - - extlb1nuq 5ab12a3ed2 + - intlb3nuq 51d74985a2 + - extlb1nuq 99aac35317 x-runtime: - - '0.390016' + - '0.281700' x-version-label: - - easypost-202305161623-0a285b6b1b-master + - easypost-202503061913-8f39069a2d-master x-xss-protection: - 1; mode=block status: diff --git a/tests/conftest.py b/tests/conftest.py index 34b7d301..855cdd54 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -4,8 +4,6 @@ import warnings from typing import ( Any, - Dict, - List, Tuple, ) @@ -13,15 +11,14 @@ from easypost.easypost_client import EasyPostClient - EASYPOST_TEST_API_KEY = os.getenv("EASYPOST_TEST_API_KEY") EASYPOST_PROD_API_KEY = os.getenv("EASYPOST_PROD_API_KEY") PARTNER_USER_PROD_API_KEY = os.getenv("PARTNER_USER_PROD_API_KEY", "123") REFERRAL_CUSTOMER_PROD_API_KEY = os.getenv("REFERRAL_CUSTOMER_PROD_API_KEY", "123") SCRUBBED_STRING = "" -SCRUBBED_ARRAY: List = [] -SCRUBBED_DICT: Dict = {} +SCRUBBED_ARRAY: list = [] +SCRUBBED_DICT: dict = {} def pytest_sessionstart(session): @@ -46,7 +43,7 @@ def pytest_sessionfinish(session, exitstatus): @pytest.fixture(autouse=True) -def check_expired_cassettes(expiration_days: int = 180, throw_error: bool = False): +def check_expired_cassettes(expiration_days: int = 365, throw_error: bool = False): """Checks for expired cassettes and throws errors if they are too old and must be re-recorded.""" test_name = os.environ.get("PYTEST_CURRENT_TEST").split(":")[-1].split(" ")[0] # type: ignore cassette_filepath = os.path.join("tests", "cassettes", f"{test_name}.yaml") @@ -99,7 +96,7 @@ def vcr_config(): } -def scrub_response_bodies(scrubbers: List[Tuple[str, Any]]) -> Any: +def scrub_response_bodies(scrubbers: list[Tuple[str, Any]]) -> Any: """Scrub sensitive data from response bodies prior to recording the cassette.""" def before_record_response(response: Any) -> Any: @@ -219,11 +216,6 @@ def report_date(): return "2022-05-04" -@pytest.fixture -def webhook_url(): - return read_fixture_data()["webhook_url"] - - @pytest.fixture def ca_address_1(): return read_fixture_data()["addresses"]["ca_address_1"] @@ -270,7 +262,14 @@ def full_shipment(): @pytest.fixture -def one_call_buy_shipment(ca_address_1, ca_address_2, basic_parcel, usps_service, usps_carrier_account_id, usps): +def one_call_buy_shipment( + ca_address_1, + ca_address_2, + basic_parcel, + usps_service, + usps_carrier_account_id, + usps, +): return { "to_address": ca_address_1, "from_address": ca_address_2, @@ -287,7 +286,7 @@ def basic_pickup(): If you need to re-record cassettes, increment the date below and ensure it is one day in the future, USPS only does "next-day" pickups including Saturday but not Sunday or Holidays. """ - pickup_date = "2023-05-17" + pickup_date = "2025-03-08" pickup_data = read_fixture_data()["pickups"]["basic"] pickup_data["min_datetime"] = pickup_date @@ -307,6 +306,13 @@ def basic_insurance(): return read_fixture_data()["insurances"]["basic"] +@pytest.fixture +def basic_claim(): + """This fixture will require you to append a `tracking_code` key with the shipment's tracking code, + and a `amount` key with the insurance amount.""" + return read_fixture_data()["claims"]["basic"] + + @pytest.fixture def basic_order(): return read_fixture_data()["orders"]["basic"] @@ -328,6 +334,26 @@ def event_bytes(): return json.dumps(event_body, separators=(",", ":")).encode() +@pytest.fixture +def webhook_hmac_signature(): + return read_fixture_data()["webhooks"]["hmac_signature"] + + +@pytest.fixture +def webhook_secret(): + return read_fixture_data()["webhooks"]["secret"] + + +@pytest.fixture +def webhook_url(): + return read_fixture_data()["webhooks"]["url"] + + +@pytest.fixture +def webhook_custom_headers(): + return read_fixture_data()["webhooks"]["custom_headers"] + + @pytest.fixture def credit_card_details(): """The credit card details below are for a valid proxy card usable @@ -345,4 +371,29 @@ def rma_form_options(): @pytest.fixture def planned_ship_date(): - return "2023-04-28" + return "2025-03-08" + + +@pytest.fixture +def desired_delivery_date(): + return "2025-03-08" + + +@pytest.fixture +def billing(): + return read_fixture_data()["billing"] + + +@pytest.fixture +def luma_ruleset_name(): + return read_fixture_data()["luma"]["ruleset_name"] + + +@pytest.fixture +def luma_planned_ship_date(): + return "2025-06-12" + + +@pytest.fixture +def referral_user(): + return read_fixture_data()["users"]["referral"] diff --git a/tests/test_address.py b/tests/test_address.py index 44cf8749..ff2a71ac 100644 --- a/tests/test_address.py +++ b/tests/test_address.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -19,22 +20,41 @@ def test_address_create(ca_address_1, test_client): @pytest.mark.vcr() def test_address_create_verify(incorrect_address, test_client): - """Test creating an address with the verify param. - - We purposefully pass in slightly incorrect data to get the corrected address back once verified. """ - incorrect_address["verify"] = True + Test creating an address with the `verify` param. + """ + # Creating normally (without specifying "verify") will make the address and perform no verifications + address = test_client.address.create(**incorrect_address) + assert isinstance(address, Address) + assert hasattr(address.verifications, "delivery") is False + + # Creating with verify would make the address and perform verifications + incorrect_address["verify"] = True address = test_client.address.create(**incorrect_address) assert isinstance(address, Address) - assert str.startswith(address.id, "adr_") - assert address.street1 == "417 MONTGOMERY ST FL 5" + + # Delivery verification assertions + assert address.verifications.delivery.success is False + assert address.verifications.delivery.details.to_dict() == {} + assert address.verifications.delivery.errors[0].code == "E.ADDRESS.NOT_FOUND" + assert address.verifications.delivery.errors[0].field == "address" + assert address.verifications.delivery.errors[0].suggestion is None + assert address.verifications.delivery.errors[0].message == "Address not found" + + # Zip4 verification assertions + assert address.verifications.zip4.success is False + assert address.verifications.zip4.details is None + assert address.verifications.zip4.errors[0].code == "E.ADDRESS.NOT_FOUND" + assert address.verifications.zip4.errors[0].field == "address" + assert address.verifications.zip4.errors[0].suggestion is None + assert address.verifications.zip4.errors[0].message == "Address not found" @pytest.mark.vcr() def test_address_create_verify_strict(ca_address_1, test_client): - """Test creating an address with the verify_strict param. + """Test creating an address with the `verify_strict` param. We purposefully pass in slightly incorrect data to get the corrected address back once verified. """ @@ -50,17 +70,21 @@ def test_address_create_verify_strict(ca_address_1, test_client): @pytest.mark.vcr() def test_address_create_verify_array(incorrect_address, test_client): - """Test creating an address with the verify param as an array. - - We purposefully pass in slightly incorrect data to get the corrected address back once verified. """ - incorrect_address["verify"] = [True] + Test creating an address with the `verify` param as an array. + """ + # Creating normally (without specifying "verify") will make the address, perform no verifications + address = test_client.address.create(**incorrect_address) + + assert isinstance(address, Address) + assert hasattr(address.verifications, "delivery") is False + # Creating with verify would make the address and perform verifications + incorrect_address["verify"] = [True] address = test_client.address.create(**incorrect_address) assert isinstance(address, Address) - assert str.startswith(address.id, "adr_") - assert address.street1 == "417 MONTGOMERY ST FL 5" + assert address.verifications.delivery.success is False @pytest.mark.vcr() @@ -96,16 +120,19 @@ def test_address_all(page_size, test_client): @pytest.mark.vcr() def test_address_get_next_page(page_size, test_client): try: - addresses = test_client.address.all(page_size=page_size) - next_page = test_client.address.get_next_page(addresses=addresses, page_size=page_size) + first_page = test_client.address.all(page_size=page_size) + next_page = test_client.address.get_next_page(addresses=first_page, page_size=page_size) - first_id_of_first_page = addresses["addresses"][0].id + first_id_of_first_page = first_page["addresses"][0].id first_id_of_second_page = next_page["addresses"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) @pytest.mark.vcr() @@ -129,3 +156,28 @@ def test_address_verify_invalid_address(test_client): test_client.address.verify(address.id) assert str(error.value) == "Unable to verify address." + + +@pytest.mark.vcr() +def test_address_create_verify_carrier(incorrect_address, test_client): + """Test creating an address with the `verify_carrier` param.""" + incorrect_address["verify"] = True + incorrect_address["verify_carrier"] = "UPS" + address = test_client.address.create(**incorrect_address) + + assert isinstance(address, Address) + + assert address.verifications.delivery.errors[0].message == "Address not found" + assert address.verifications.zip4.errors[0].message == "Address not found" + + +@pytest.mark.vcr() +def test_address_create_and_verify_carrier(incorrect_address, test_client): + """Test creating and verifying an address with the `verify_carrier` param.""" + incorrect_address["verify_carrier"] = "UPS" + address = test_client.address.create_and_verify(**incorrect_address) + + assert isinstance(address, Address) + + assert address.verifications.delivery.errors[0].message == "Address not found" + assert address.verifications.zip4.errors[0].message == "Address not found" diff --git a/tests/test_api_key.py b/tests/test_api_key.py new file mode 100644 index 00000000..8817e6d2 --- /dev/null +++ b/tests/test_api_key.py @@ -0,0 +1,61 @@ +import os + +import pytest + +from easypost import EasyPostClient +from easypost.models import ApiKey + + +@pytest.mark.vcr() +def test_api_key_retrieve_authenticated_user(prod_client): + """Tests that we can retrieve the authenticated user's API keys.""" + user = prod_client.user.retrieve_me() + api_keys = prod_client.api_keys.retrieve_api_keys_for_user(user.id) + + assert all(isinstance(key, ApiKey) for key in api_keys) + + +@pytest.mark.vcr() +def test_api_key_retrieve_child_user(prod_client): + """Tests that we can retrieve a child user's API keys as the parent.""" + user = prod_client.user.create(name="Test User") + child_user = prod_client.user.retrieve(user.id) + + api_keys = prod_client.api_keys.retrieve_api_keys_for_user(child_user.id) + + assert all(isinstance(key, ApiKey) for key in api_keys) + + # Delete the user so we don't clutter up the test environment + prod_client.user.delete(child_user.id) + + +@pytest.mark.vcr() +def test_api_key_all(prod_client): + """Tests that we can retrieve all API keys.""" + api_keys = prod_client.api_keys.all() + + assert all(isinstance(key, ApiKey) for key in api_keys.keys) + for child in api_keys.children: + assert all(isinstance(key, ApiKey) for key in child["keys"]) + + +@pytest.mark.vcr() +def test_api_key_lifecycle(): + """Tests creating an API key for a child user.""" + # Create an API key + referral_client = EasyPostClient(os.getenv("REFERRAL_CUSTOMER_PROD_API_KEY")) + api_key = referral_client.api_keys.create("production") + assert isinstance(api_key, ApiKey) + assert api_key.id.startswith("ak_") + assert api_key.mode == "production" + + # Disable the API key + api_key = referral_client.api_keys.disable(api_key.id) + assert api_key.active is False + + # Enable the API key + api_key = referral_client.api_keys.enable(api_key.id) + assert api_key.active is True + + # Delete the API key + referral_client.api_keys.delete(api_key.id) diff --git a/tests/test_base_service.py b/tests/test_base_service.py new file mode 100644 index 00000000..766ba73a --- /dev/null +++ b/tests/test_base_service.py @@ -0,0 +1,70 @@ +from unittest.mock import patch + +import pytest + +from easypost.constant import NO_MORE_PAGES_ERROR +from easypost.errors import EndOfPaginationError + + +@pytest.mark.vcr() # Cassette not needed due to mocking, but used to avoid making real bogus API calls +def test_get_next_page_collects_all_pages(test_client): + page_size = 1 # Doesn't matter what this is, we're mocking the response + all_results = [] + + # Using scanforms as an example, but this should work for any service since it's a base class method + first_page_response = { + "scan_forms": [ + { + "id": "sf_123", + } + ], + "has_more": True, + } + + # Mock the initial "get all scanforms" call + with patch("easypost.requestor.Requestor.request", return_value=first_page_response): + first_page = test_client.scan_form.all(page_size=page_size) + all_results += first_page["scan_forms"] + previous_page = first_page + + second_page_response = { + "scan_forms": [ + { + "id": "sf_456", + } + ], + "has_more": True, + } + + # Mock the first "get next page" call with more to collect after + # (current page "has_more" = True, next page "has_more" = True) + with patch("easypost.requestor.Requestor.request", return_value=second_page_response): + next_page = test_client.scan_form.get_next_page(scan_forms=previous_page, page_size=page_size) # type: ignore + all_results += next_page["scan_forms"] + previous_page = next_page + + third_page_response = { + "scan_forms": [ + { + "id": "sf_789", + } + ], + "has_more": False, + } + + # Mock the second "get next page" call with no more to collect + # (current page "has_more" = True, next page "has_more" = False) + with patch("easypost.requestor.Requestor.request", return_value=third_page_response): + next_page = test_client.scan_form.get_next_page(scan_forms=previous_page, page_size=page_size) # type: ignore + all_results += next_page["scan_forms"] + previous_page = next_page + + # Verify we have all scan_forms (from the initial "get all scanforms" and two subsequent "get next page" calls) + # Ensures that no guard clauses inside the "get next page" method are preventing us from collecting all scanforms + assert len(all_results) == 3 + + # Now that the previous page has "has_more" = False, it should throw an error before even making the API call + with pytest.raises(EndOfPaginationError) as error: + _ = test_client.scan_form.get_next_page(scan_forms=previous_page, page_size=page_size) # type: ignore + + assert error.value.message == NO_MORE_PAGES_ERROR diff --git a/tests/test_batch.py b/tests/test_batch.py index f0712805..9e7ddee2 100644 --- a/tests/test_batch.py +++ b/tests/test_batch.py @@ -38,20 +38,6 @@ def test_batch_all(page_size, test_client): assert all(isinstance(batch, Batch) for batch in batches_array) -@pytest.mark.vcr() -def test_batch_create_and_buy(one_call_buy_shipment, test_client): - batch = test_client.batch.create_and_buy( - shipments=[ - one_call_buy_shipment, - one_call_buy_shipment, - ], - ) - - assert isinstance(batch, Batch) - assert str.startswith(batch.id, "batch_") - assert batch.num_shipments == 2 - - @pytest.mark.vcr() def test_batch_buy(one_call_buy_shipment, test_client, synchronous_sleep_seconds): function_name = inspect.stack()[0][3] diff --git a/tests/test_beta_carrier_metadata.py b/tests/test_beta_carrier_metadata.py deleted file mode 100644 index f5144f0c..00000000 --- a/tests/test_beta_carrier_metadata.py +++ /dev/null @@ -1,27 +0,0 @@ -import pytest - - -@pytest.mark.vcr() -def test_beta_retrieve_carrier_metadata(test_client): - """Tests that we can retrieve all carriers and all metadata from the API when no params are provided.""" - carrier_metadata = test_client.beta_carrier_metadata.retrieve_carrier_metadata() - - # Assert we get multiple carriers - assert any(carrier.name == "usps" for carrier in carrier_metadata) - assert any(carrier.name == "fedex" for carrier in carrier_metadata) - - -@pytest.mark.vcr() -def test_beta_retrieve_carrier_metadata_with_filters(test_client): - """Tests that we can retrieve metadata based on the filters provided.""" - carrier_metadata = test_client.beta_carrier_metadata.retrieve_carrier_metadata( - carriers=["usps"], - types=["service_levels", "predefined_packages"], - ) - - # Assert we get the single carrier we asked for and only the types we asked for - assert all(carrier.name == "usps" for carrier in carrier_metadata) - assert len(carrier_metadata) == 1 - assert carrier_metadata[0]["service_levels"] - assert carrier_metadata[0]["predefined_packages"] - assert not carrier_metadata[0].get("supported_features") diff --git a/tests/test_beta_rate.py b/tests/test_beta_rate.py index 6c9e8125..6d1e579d 100644 --- a/tests/test_beta_rate.py +++ b/tests/test_beta_rate.py @@ -18,4 +18,4 @@ def test_beta_get_lowest_stateless_rate(basic_shipment, test_client): lowest_stateless_rate = get_lowest_stateless_rate(stateless_rates) - assert lowest_stateless_rate["service"] == "First" + assert lowest_stateless_rate["service"] == "GroundAdvantage" diff --git a/tests/test_beta_referral_customer.py b/tests/test_beta_referral_customer.py index 7a55625a..4860ddf8 100644 --- a/tests/test_beta_referral_customer.py +++ b/tests/test_beta_referral_customer.py @@ -4,7 +4,7 @@ @pytest.mark.vcr() -def test_beta_referral_customer_add_payment_method(referral_customer_prod_client): +def test_beta_referral_customer_add_payment_method(referral_customer_prod_client, billing): """This test requires a referral customer's production API key via REFERRAL_CUSTOMER_PROD_API_KEY. We expect this test to fail because we don't have valid Stripe details to use. Assert the correct error. @@ -13,10 +13,10 @@ def test_beta_referral_customer_add_payment_method(referral_customer_prod_client referral_customer_prod_client.beta_referral_customer.add_payment_method( stripe_customer_id="cus_123", payment_method_reference="ba_123", - priority="primary", + priority=billing["priority"], ) - assert str(error.value) == "Invalid Payment Gateway Reference." + assert str(error.value) == "Invalid connect integration." @pytest.mark.vcr() @@ -41,3 +41,19 @@ def test_beta_referral_customer_refund_by_payment_log(referral_customer_prod_cli referral_customer_prod_client.beta_referral_customer.refund_by_payment_log(payment_log_id="paylog_123") assert str(error.value) == "We could not find a transaction with that id." + + +@pytest.mark.vcr() +def test_beta_referral_customer_create_credit_card_client_secret(referral_customer_prod_client): + """This test requires a referral customer's production API key via REFERRAL_CUSTOMER_PROD_API_KEY.""" + response = referral_customer_prod_client.beta_referral_customer.create_credit_card_client_secret() + + assert str.startswith(response.client_secret, "seti_") + + +@pytest.mark.vcr() +def test_beta_referral_customer_create_bank_account_client_secret(referral_customer_prod_client): + """This test requires a referral customer's production API key via REFERRAL_CUSTOMER_PROD_API_KEY.""" + response = referral_customer_prod_client.beta_referral_customer.create_bank_account_client_secret() + + assert str.startswith(response.client_secret, "fcsess_client_secret_") diff --git a/tests/test_billing.py b/tests/test_billing.py index 2be54313..320dbb4b 100644 --- a/tests/test_billing.py +++ b/tests/test_billing.py @@ -7,14 +7,15 @@ @patch( - "easypost.services.billing_service.BillingService._get_payment_method_info", return_value=["/endpoint", "card_123"] + "easypost.services.billing_service.BillingService._get_payment_method_info", + return_value=["/endpoint", "card_123"], ) -@patch("easypost.services.billing_service.Requestor.request", return_value={"mock": "response"}) -def test_billing_fund_wallet(mock_request, mock_get_payment_info, prod_client): - prod_client.billing.fund_wallet( - amount="2000", - priority="primary", - ) +@patch( + "easypost.services.billing_service.Requestor.request", + return_value={"mock": "response"}, +) +def test_billing_fund_wallet(mock_request, mock_get_payment_info, prod_client, billing): + prod_client.billing.fund_wallet(amount="2000", priority=billing["priority"]) mock_request.assert_called_once_with( method=easypost.requestor.RequestMethod.POST, @@ -25,51 +26,70 @@ def test_billing_fund_wallet(mock_request, mock_get_payment_info, prod_client): @patch( "easypost.services.billing_service.BillingService.retrieve_payment_methods", - return_value={"primary_payment_method": {"id": "card_123"}}, + return_value={"primary_payment_method": {"id": "pm_123", "object": "CreditCard"}}, ) -@patch("easypost.services.billing_service.Requestor.request", return_value={"mock": "response"}) -def test_billing_payment_method_delete_credit_card(mock_request, mock_payment_methods, prod_client): +@patch( + "easypost.services.billing_service.Requestor.request", + return_value={"mock": "response"}, +) +def test_billing_payment_method_delete_credit_card(mock_request, mock_payment_methods, prod_client, billing): """Tests we make a valid call to delete a credit card.""" - prod_client.billing.delete_payment_method(priority="primary") + prod_client.billing.delete_payment_method(priority=billing["priority"]) - mock_request.assert_called_once_with(method=easypost.requestor.RequestMethod.DELETE, url="/credit_cards/card_123") + mock_request.assert_called_once_with(method=easypost.requestor.RequestMethod.DELETE, url="/credit_cards/pm_123") @patch( "easypost.services.billing_service.BillingService.retrieve_payment_methods", - return_value={"primary_payment_method": {"id": "bank_123"}}, + return_value={"primary_payment_method": {"id": "pm_123", "object": "BankAccount"}}, +) +@patch( + "easypost.services.billing_service.Requestor.request", + return_value={"mock": "response"}, ) -@patch("easypost.services.billing_service.Requestor.request", return_value={"mock": "response"}) -def test_billing_payment_method_delete_bank_account(mock_request, mock_payment_methods, prod_client): +def test_billing_payment_method_delete_bank_account(mock_request, mock_payment_methods, prod_client, billing): """Tests we make a valid call to delete a bank account.""" - prod_client.billing.delete_payment_method(priority="primary") + prod_client.billing.delete_payment_method( + priority=billing["priority"], + ) - mock_request.assert_called_once_with(method=easypost.requestor.RequestMethod.DELETE, url="/bank_accounts/bank_123") + mock_request.assert_called_once_with(method=easypost.requestor.RequestMethod.DELETE, url="/bank_accounts/pm_123") @patch( "easypost.services.billing_service.BillingService.retrieve_payment_methods", return_value={"primary_payment_method": {"id": "bad_id"}}, ) -@patch("easypost.services.billing_service.Requestor.request", return_value={"mock": "response"}) -def test_billing_payment_method_delete_invalid(mock_request, mock_payment_methods, prod_client): +@patch( + "easypost.services.billing_service.Requestor.request", + return_value={"mock": "response"}, +) +def test_billing_payment_method_delete_invalid(mock_request, mock_payment_methods, prod_client, billing): """Tests we raise an error when we receive an invalid payment method""" with pytest.raises(InvalidObjectError): - _ = prod_client.billing.delete_payment_method(priority="primary") + _ = prod_client.billing.delete_payment_method( + priority=billing["priority"], + ) @patch( "easypost.services.billing_service.BillingService.retrieve_payment_methods", return_value={"primary_payment_methods": {"id": "bad_id"}}, ) -@patch("easypost.services.billing_service.Requestor.request", return_value={"mock": "response"}) +@patch( + "easypost.services.billing_service.Requestor.request", + return_value={"mock": "response"}, +) def test_billing_payment_method_delete_bad_request(mock_request, mock_payment_methods, prod_client): """Tests we raise an error when we cannot retrieve a payment method.""" with pytest.raises(InvalidObjectError): _ = prod_client.billing.delete_payment_method(priority="tertiary") -@patch("easypost.services.billing_service.Requestor.request", return_value={"id": "card_123"}) +@patch( + "easypost.services.billing_service.Requestor.request", + return_value={"id": "card_123"}, +) def test_billing_retrieve_payment_methods(mock_request, prod_client): """Tests that we throw an error when we cannot retrieve payment methods due to no billing being setup.""" response = prod_client.billing.retrieve_payment_methods() @@ -78,7 +98,10 @@ def test_billing_retrieve_payment_methods(mock_request, prod_client): assert isinstance(response, easypost.easypost_object.EasyPostObject) -@patch("easypost.services.billing_service.Requestor.request", return_value={"mock": "response"}) +@patch( + "easypost.services.billing_service.Requestor.request", + return_value={"mock": "response"}, +) def test_billing_retrieve_payment_methods_no_billing_setup(mock_request, prod_client): """Tests that we throw an error when we cannot retrieve payment methods due to no billing being setup.""" with pytest.raises(InvalidObjectError) as error: @@ -86,3 +109,25 @@ def test_billing_retrieve_payment_methods_no_billing_setup(mock_request, prod_cl mock_request.assert_called_once() assert str(error.value) == "Billing has not been setup for this user. Please add a payment method." + + +@patch( + "easypost.services.billing_service.BillingService.retrieve_payment_methods", + return_value={ + "primary_payment_method": {"id": "pm_123", "object": "CreditCard"}, + "secondary_payment_method": {"id": "pm_456", "object": "BankAccount"}, + }, +) +def test_billing_get_payment_method_info_by_object_type(mock_request, prod_client, billing): + """Tests we can determine the payment method type/endpoint by object type.""" + endpoint, payment_method_id = prod_client.billing._get_payment_method_info( + priority=billing["priority"], + ) + + assert endpoint == "/credit_cards" + assert payment_method_id == "pm_123" + + endpoint, payment_method_id = prod_client.billing._get_payment_method_info(priority="secondary") + + assert endpoint == "/bank_accounts" + assert payment_method_id == "pm_456" diff --git a/tests/test_carrier_account.py b/tests/test_carrier_account.py index 6e0beccb..a708c665 100644 --- a/tests/test_carrier_account.py +++ b/tests/test_carrier_account.py @@ -1,7 +1,29 @@ import pytest +from easypost.constant import _CARRIER_ACCOUNT_CREATE_ENDPOINT_TYPES from easypost.errors.api.api_error import ApiError from easypost.models import CarrierAccount +from easypost.requestor import Requestor + + +@pytest.fixture +def vcr_cassette_name(request): + return request.node.name.replace("[", "_").replace("]", "") + + +def _flatten_custom_carrier_route_mapping(): + return [ + (carrier_account_type, endpoint) + for endpoint, carrier_account_types in _CARRIER_ACCOUNT_CREATE_ENDPOINT_TYPES.items() + for carrier_account_type in carrier_account_types + ] + + +def _carrier_create_payload_for_endpoint(endpoint: str) -> dict: + if endpoint in ("/carrier_accounts/open", "/carrier_accounts/register"): + return {"registration_data": {}} + + return {} @pytest.mark.vcr() @@ -75,22 +97,43 @@ def test_carrier_account_type(prod_client): @pytest.mark.vcr() -def test_carrier_account_create_with_custom_workflow(prod_client): - """Test register a Carrier Account with custom registration such as FedEx or UPS. +@pytest.mark.parametrize( + "carrier_account_type,expected_endpoint,params", + [ + pytest.param( + carrier_account_type, + endpoint, + _carrier_create_payload_for_endpoint(endpoint), + id=carrier_account_type, + ) + for carrier_account_type, endpoint in _flatten_custom_carrier_route_mapping() + ], +) +def test_carrier_account_create_url_routing(prod_client, monkeypatch, carrier_account_type, expected_endpoint, params): + payload = {"type": carrier_account_type, **params} + captured_request = {} + + original_request = Requestor.request + + def spy_request(self, method, url, params=None, *args, **kwargs): + if "url" not in captured_request and url.startswith("/carrier_accounts"): + captured_request["url"] = url + captured_request["params"] = params + return original_request(self, method, url, params, *args, **kwargs) - We purposefully don't pass data here because real data is required for this endpoint - which we don't have in a test context, simply assert the error matches when no data is passed. - """ - carrier_account = { - "type": "UpsAccount", - "registration_data": {}, - } + monkeypatch.setattr(Requestor, "request", spy_request) try: - prod_client.carrier_account.create(**carrier_account) + carrier_account = prod_client.carrier_account.create(**payload) except ApiError as error: - assert error.http_status == 422 - assert any( - [error["field"] == "account_number" and error["message"] == "must be present and a string"] - for error in error.errors - ) + assert error.http_status not in (404, 500) + else: + assert isinstance(carrier_account, CarrierAccount) + assert str.startswith(carrier_account.id, "ca_") + prod_client.carrier_account.delete(carrier_account.id) + + assert captured_request["url"] == expected_endpoint + if expected_endpoint == "/carrier_accounts/register_oauth": + assert "carrier_account_oauth_registrations" in captured_request["params"] + else: + assert "carrier_account" in captured_request["params"] diff --git a/tests/test_claim.py b/tests/test_claim.py new file mode 100644 index 00000000..7f474901 --- /dev/null +++ b/tests/test_claim.py @@ -0,0 +1,104 @@ +import pytest + +from easypost.constant import ( + _FILTERS_KEY, + _TEST_FAILED_INTENTIONALLY_ERROR, + NO_MORE_PAGES_ERROR, +) +from easypost.models import ( + Claim, + Shipment, +) + + +def _prepare_insured_shipment(client, shipment_data, claim_amount) -> Shipment: + shipment = client.shipment.create(**shipment_data) + rate = shipment.lowest_rate() + purchased_shipment = client.shipment.buy(shipment.id, rate=rate) + _ = client.shipment.insure(shipment.id, amount=claim_amount) + + return purchased_shipment + + +@pytest.mark.vcr() +def test_claim_create(full_shipment, basic_claim, test_client): + claim_amount = "100.00" + + insured_shipment = _prepare_insured_shipment(test_client, full_shipment, claim_amount) + + claim_data = basic_claim + claim_data["tracking_code"] = insured_shipment.tracking_code + claim_data["amount"] = claim_amount + + claim = test_client.claim.create(**claim_data) + + assert isinstance(claim, Claim) + assert str.startswith(claim.id, "clm_") + assert claim.type == claim_data["type"] + + +@pytest.mark.vcr() +def test_claim_retrieve(full_shipment, basic_claim, test_client): + claim_amount = "100.00" + + insured_shipment = _prepare_insured_shipment(test_client, full_shipment, claim_amount) + + claim_data = basic_claim + claim_data["tracking_code"] = insured_shipment.tracking_code + claim_data["amount"] = claim_amount + + claim = test_client.claim.create(**claim_data) + + retrieved_claim = test_client.claim.retrieve(claim.id) + + assert isinstance(retrieved_claim, Claim) + # status changes between creation and retrieval, so we can't compare the whole object + assert claim.id == retrieved_claim.id + + +@pytest.mark.vcr() +def test_claim_all(page_size, test_client): + claims = test_client.claim.all(page_size=page_size) + + claim_array = claims["claims"] + + assert len(claim_array) <= page_size + assert claims["has_more"] is not None + assert all(isinstance(claim, Claim) for claim in claim_array) + + +@pytest.mark.vcr() +def test_claim_get_next_page(page_size, test_client): + try: + first_page = test_client.claim.all(page_size=page_size) + next_page = test_client.claim.get_next_page(claims=first_page, page_size=page_size) + + first_id_of_first_page = first_page["claims"][0].id + first_id_of_second_page = next_page["claims"][0].id + + assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] + except Exception as e: + if e.message != NO_MORE_PAGES_ERROR: + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) + + +@pytest.mark.vcr() +def test_claim_cancel(test_client, full_shipment, basic_claim): + claim_amount = "100.00" + + insured_shipment = _prepare_insured_shipment(test_client, full_shipment, claim_amount) + + claim_data = basic_claim + claim_data["tracking_code"] = insured_shipment.tracking_code + claim_data["amount"] = claim_amount + + claim = test_client.claim.create(**claim_data) + + cancelled_claim = test_client.claim.cancel(id=claim.id) + + assert isinstance(cancelled_claim, Claim) + assert str.startswith(cancelled_claim.id, "clm_") + assert cancelled_claim.status == "cancelled" diff --git a/tests/test_customer_portal.py b/tests/test_customer_portal.py new file mode 100644 index 00000000..82e655b1 --- /dev/null +++ b/tests/test_customer_portal.py @@ -0,0 +1,15 @@ +import pytest + + +@pytest.mark.vcr() +def test_customer_portal_account_link_create(full_shipment, basic_claim, prod_client): + user = prod_client.user.all_children()["children"][0] + + account_link = prod_client.customer_portal.create_account_link( + session_type="account_onboarding", + user_id=user.id, + refresh_url="https://example.com/refresh", + return_url="https://example.com/return", + ) + + assert account_link.object == "CustomerPortalAccountLink" diff --git a/tests/test_easypost_client.py b/tests/test_easypost_client.py index 20721d83..65de3f54 100644 --- a/tests/test_easypost_client.py +++ b/tests/test_easypost_client.py @@ -6,9 +6,10 @@ from easypost.easypost_client import EasyPostClient from easypost.errors import TimeoutError +from easypost.requestor import RequestMethod -def test_api_key(): +def test_easypost_client_api_key(): """Tests setting and getting API keys from different client objects.""" client1 = EasyPostClient(api_key="123") assert client1.api_key == "123" @@ -17,7 +18,7 @@ def test_api_key(): assert client2.api_key == "456" -def test_no_api_key(): +def test_easypost_client_no_api_key(): """Tests that we raise an error when no API key is passed to the client.""" with pytest.raises(TypeError) as error: EasyPostClient() @@ -25,7 +26,7 @@ def test_no_api_key(): assert "missing 1 required positional argument: 'api_key'" in str(error.value) -def test_invalid_client_property(): +def test_easypost_client_invalid_client_property(): """Tests that we throw an error when attempting to use an invalid property of a client.""" with pytest.raises(AttributeError) as error: EasyPostClient("123").invalid_property() @@ -33,7 +34,7 @@ def test_invalid_client_property(): assert str(error.value) == "'EasyPostClient' object has no attribute 'invalid_property'" -def test_api_base(): +def test_easypost_client_api_base(): """Tests that we can override the API base of the client object.""" client1 = EasyPostClient(api_key="123") assert client1.api_base == "https://api.easypost.com/v2" @@ -43,7 +44,7 @@ def test_api_base(): @patch("requests.Session") -def test_client_timeout(mock_session, basic_shipment): +def test_easypost_client_timeout(mock_session, basic_shipment): """Tests that the timeout gets used properly in requests when set.""" mock_session().request.side_effect = requests.exceptions.Timeout() client = EasyPostClient(api_key=os.getenv("EASYPOST_TEST_API_KEY"), timeout=0.1) @@ -53,3 +54,14 @@ def test_client_timeout(mock_session, basic_shipment): assert False except TimeoutError as error: assert error.message == "Request timed out." + + +@pytest.mark.vcr() +def test_client_make_api_call(): + """Tests that we can make an API call using the generic make_api_call method.""" + client = EasyPostClient(api_key=os.getenv("EASYPOST_TEST_API_KEY")) + + response = client.make_api_call(method=RequestMethod.GET, endpoint="/addresses", params={"page_size": 1}) + + assert len(response["addresses"]) == 1 + assert response["addresses"][0]["object"] == "Address" diff --git a/tests/test_embeddable.py b/tests/test_embeddable.py new file mode 100644 index 00000000..688370b6 --- /dev/null +++ b/tests/test_embeddable.py @@ -0,0 +1,13 @@ +import pytest + + +@pytest.mark.vcr() +def test_embeddable_session_create(full_shipment, basic_claim, prod_client): + user = prod_client.user.all_children()["children"][0] + + session = prod_client.embeddable.create_session( + origin_host="https://example.com", + user_id=user.id, + ) + + assert session.object == "EmbeddablesSession" diff --git a/tests/test_error.py b/tests/test_error.py index ae6cb19b..32c77849 100644 --- a/tests/test_error.py +++ b/tests/test_error.py @@ -20,6 +20,28 @@ def test_error(test_client): ) +@pytest.mark.vcr() +def test_error_alternative_format(test_client, basic_claim): + """Tests that we assign properties of an error correctly when returned via the alternative format. + + NOTE: Claims (among other things) uses the alternative errors format. + """ + try: + claim_data = basic_claim + claim_data["tracking_code"] = "123" # Intentionally pass a bad tracking code + + test_client.claim.create(**claim_data) + except ApiError as error: + assert error.http_status == 404 + assert error.code == "NOT_FOUND" + assert error.message == "The requested resource could not be found." + assert error.errors[0] == "No eligible insurance found with provided tracking code." + assert ( + error.http_body + == '{"error": {"code": "NOT_FOUND", "errors": ["No eligible insurance found with provided tracking code."], "message": "The requested resource could not be found."}}' # noqa + ) + + def test_error_no_json(): """Tests if we don't have valid JSON that we don't set the JSON body of an error.""" error = ApiError(message="", http_body="bad json") @@ -56,7 +78,11 @@ def test_error_bad_format_message(): message_data = { "errors": ["Bad format 1", "Bad format 2"], "bad_data": [ - {"first_message": "Bad format 3", "second_message": "Bad format 4", "thrid_message": "Bad format 5"} + { + "first_message": "Bad format 3", + "second_message": "Bad format 4", + "thrid_message": "Bad format 5", + } ], } diff --git a/tests/test_event.py b/tests/test_event.py index a20cf337..d7f5eebb 100644 --- a/tests/test_event.py +++ b/tests/test_event.py @@ -5,6 +5,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -30,16 +31,19 @@ def test_event_all(page_size, test_client): @pytest.mark.vcr() def test_event_get_next_page(page_size, test_client): try: - events = test_client.event.all(page_size=page_size) - next_page = test_client.event.get_next_page(events=events, page_size=page_size) + first_page = test_client.event.all(page_size=page_size) + next_page = test_client.event.get_next_page(events=first_page, page_size=page_size) - first_id_of_first_page = events["events"][0].id + first_id_of_first_page = first_page["events"][0].id first_id_of_second_page = next_page["events"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) @pytest.mark.vcr() diff --git a/tests/test_fedex_registration.py b/tests/test_fedex_registration.py new file mode 100644 index 00000000..ea4e5347 --- /dev/null +++ b/tests/test_fedex_registration.py @@ -0,0 +1,137 @@ +from unittest.mock import MagicMock + +from easypost.easypost_object import EasyPostObject +from easypost.models import CarrierAccount + + +def test_register_address(prod_client, monkeypatch): + """Tests registering a billing address.""" + fedex_account_number = "123456789" + address_validation = { + "name": "BILLING NAME", + "street1": "1234 BILLING STREET", + "city": "BILLINGCITY", + "state": "ST", + "postal_code": "12345", + "country_code": "US", + } + easypost_details = {"carrier_account_id": "ca_123"} + params = { + "address_validation": address_validation, + "easypost_details": easypost_details, + } + + json_response = { + "email_address": None, + "options": ["SMS", "CALL", "INVOICE"], + "phone_number": "***-***-9721", + } + + mock_requestor = MagicMock() + mock_requestor.return_value.request.return_value = json_response + + monkeypatch.setattr("easypost.services.fedex_registration_service.Requestor", mock_requestor) + + response = prod_client.fedex_registration.register_address(fedex_account_number, **params) + assert isinstance(response, EasyPostObject) + assert response.email_address is None + assert "SMS" in response.options + assert "CALL" in response.options + assert "INVOICE" in response.options + assert response.phone_number == "***-***-9721" + + +def test_request_pin(prod_client, monkeypatch): + """Tests requesting a pin.""" + fedex_account_number = "123456789" + params = { + "easypost_details": {"carrier_account_id": "ca_123"}, + } + + json_response = {"message": "sent secured Pin"} + + mock_requestor = MagicMock() + mock_requestor.return_value.request.return_value = json_response + + monkeypatch.setattr("easypost.services.fedex_registration_service.Requestor", mock_requestor) + + response = prod_client.fedex_registration.request_pin(fedex_account_number, "SMS", **params) + assert isinstance(response, EasyPostObject) + assert response.message == "sent secured Pin" + + +def test_validate_pin(prod_client, monkeypatch): + """Tests validating a pin.""" + fedex_account_number = "123456789" + pin_validation = { + "pin_code": "123456", + "name": "BILLING NAME", + } + easypost_details = {"carrier_account_id": "ca_123"} + params = { + "pin_validation": pin_validation, + "easypost_details": easypost_details, + } + + json_response = { + "id": "ca_123", + "object": "CarrierAccount", + "type": "FedexAccount", + "credentials": { + "account_number": "123456789", + "mfa_key": "123456789-XXXXX", + }, + } + + mock_requestor = MagicMock() + mock_requestor.return_value.request.return_value = json_response + + monkeypatch.setattr("easypost.services.fedex_registration_service.Requestor", mock_requestor) + + response = prod_client.fedex_registration.validate_pin(fedex_account_number, **params) + assert isinstance(response, CarrierAccount) + assert response.id == "ca_123" + assert response.object == "CarrierAccount" + assert response.type == "FedexAccount" + assert response.credentials["account_number"] == "123456789" + assert response.credentials["mfa_key"] == "123456789-XXXXX" + + +def test_submit_invoice(prod_client, monkeypatch): + """Tests submitting details about an invoice.""" + fedex_account_number = "123456789" + invoice_validation = { + "name": "BILLING NAME", + "invoice_number": "INV-12345", + "invoice_date": "2025-12-08", + "invoice_amount": "100.00", + "invoice_currency": "USD", + } + easypost_details = {"carrier_account_id": "ca_123"} + params = { + "invoice_validation": invoice_validation, + "easypost_details": easypost_details, + } + + json_response = { + "id": "ca_123", + "object": "CarrierAccount", + "type": "FedexAccount", + "credentials": { + "account_number": "123456789", + "mfa_key": "123456789-XXXXX", + }, + } + + mock_requestor = MagicMock() + mock_requestor.return_value.request.return_value = json_response + + monkeypatch.setattr("easypost.services.fedex_registration_service.Requestor", mock_requestor) + + response = prod_client.fedex_registration.submit_invoice(fedex_account_number, **params) + assert isinstance(response, CarrierAccount) + assert response.id == "ca_123" + assert response.object == "CarrierAccount" + assert response.type == "FedexAccount" + assert response.credentials["account_number"] == "123456789" + assert response.credentials["mfa_key"] == "123456789-XXXXX" diff --git a/tests/test_hook.py b/tests/test_hook.py new file mode 100644 index 00000000..44af38d5 --- /dev/null +++ b/tests/test_hook.py @@ -0,0 +1,56 @@ +import datetime +import uuid + +import pytest + + +@pytest.mark.vcr() +def test_request_hooks(basic_parcel, test_client): + def assert_request(**kwargs): + """Make assertions about a request once the RequestHook fires.""" + assert kwargs.get("method").value == "post" + assert kwargs.get("path") == "https://api.easypost.com/v2/parcels" + assert "parcel" in kwargs.get("request_body") + assert "Authorization" in kwargs.get("headers") + assert isinstance(kwargs.get("request_timestamp"), datetime.datetime) + assert uuid.UUID(str(kwargs.get("request_uuid"))) + + """Test that we fire a RequestHook prior to making an HTTP request.""" + test_client.subscribe_to_request_hook(assert_request) + _ = test_client.parcel.create(**basic_parcel) + + +@pytest.mark.vcr() +def test_response_hooks(basic_parcel, test_client): + def assert_response(**kwargs): + """Make assertions about a response once the ResponseHook fires.""" + assert kwargs.get("http_status") == 201 + assert kwargs.get("method").value == "post" + assert kwargs.get("path") == "https://api.easypost.com/v2/parcels" + assert "object" in kwargs.get("response_body") + assert "location" in kwargs.get("headers") + assert kwargs.get("response_timestamp") > kwargs.get("request_timestamp") + assert uuid.UUID(str(kwargs.get("request_uuid"))) + + """Test that we fire a ResponseHook after receiving an HTTP response.""" + test_client.subscribe_to_response_hook(assert_response) + _ = test_client.parcel.create(**basic_parcel) + + +@pytest.mark.vcr() +def test_unsubscribe_hooks(basic_parcel, test_client): + """Test that we do not fire a hook once unsubscribed.""" + + def fail_if_subscribed(**kwargs): + """This function should never run since we unsubscribe from HTTP hooks.""" + raise Exception("Unsubscribing from HTTP hooks did not work as intended") + + test_client.subscribe_to_request_hook(fail_if_subscribed) + test_client.unsubscribe_from_request_hook(fail_if_subscribed) + + test_client.subscribe_to_response_hook(fail_if_subscribed) + test_client.unsubscribe_from_response_hook(fail_if_subscribed) + + _ = test_client.parcel.create(**basic_parcel) + + assert True diff --git a/tests/test_insurance.py b/tests/test_insurance.py index e1c359d6..20f4b18d 100644 --- a/tests/test_insurance.py +++ b/tests/test_insurance.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -51,13 +52,30 @@ def test_insurance_all(page_size, test_client): @pytest.mark.vcr() def test_insurance_get_next_page(page_size, test_client): try: - insurances = test_client.insurance.all(page_size=page_size) - next_page = test_client.insurance.get_next_page(insurances=insurances, page_size=page_size) + first_page = test_client.insurance.all(page_size=page_size) + next_page = test_client.insurance.get_next_page(insurances=first_page, page_size=page_size) - first_id_of_first_page = insurances["insurances"][0].id + first_id_of_first_page = first_page["insurances"][0].id first_id_of_second_page = next_page["insurances"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) + + +@pytest.mark.vcr() +def test_insurance_refund(test_client, basic_insurance): + insurance_data = basic_insurance + insurance_data["tracking_code"] = "EZ1000000001" + + insurance = test_client.insurance.create(**insurance_data) + cancelled_insurance = test_client.insurance.refund(id=insurance.id) + + assert isinstance(cancelled_insurance, Insurance) + assert str.startswith(cancelled_insurance.id, "ins_") + assert cancelled_insurance.status == "cancelled" + assert cancelled_insurance.messages[0] == "Insurance was cancelled by the user." diff --git a/tests/test_luma.py b/tests/test_luma.py new file mode 100644 index 00000000..03380a35 --- /dev/null +++ b/tests/test_luma.py @@ -0,0 +1,17 @@ +import pytest + + +@pytest.mark.vcr() +def test_luma_get_promise( + basic_shipment, + luma_ruleset_name, + luma_planned_ship_date, + test_client, +): + """Test that we get service recommendations from Luma based on your ruleset.""" + basic_shipment["ruleset_name"] = luma_ruleset_name + basic_shipment["planned_ship_date"] = luma_planned_ship_date + + response = test_client.luma.get_promise(**basic_shipment) + + assert response.luma_selected_rate is not None diff --git a/tests/test_order.py b/tests/test_order.py index e2dfc163..a500b9c2 100644 --- a/tests/test_order.py +++ b/tests/test_order.py @@ -56,14 +56,14 @@ def test_order_lowest_rate(basic_order, test_client): # Test lowest rate with no filters lowest_rate = order.lowest_rate() - assert lowest_rate.service == "First" - assert lowest_rate.rate == "6.07" + assert lowest_rate.service == "GroundAdvantage" + assert lowest_rate.rate == "11.74" assert lowest_rate.carrier == "USPS" # Test lowest rate with service filter (this rate is higher than the lowest but should filter) lowest_rate_service = order.lowest_rate(services=["Priority"]) assert lowest_rate_service.service == "Priority" - assert lowest_rate_service.rate == "7.15" + assert lowest_rate_service.rate == "15.64" assert lowest_rate_service.carrier == "USPS" # Test lowest rate with carrier filter (should error due to bad carrier) diff --git a/tests/test_pickup.py b/tests/test_pickup.py index cf3d3acf..9a6d90b2 100644 --- a/tests/test_pickup.py +++ b/tests/test_pickup.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -36,16 +37,19 @@ def test_pickup_all(page_size, test_client): @pytest.mark.vcr() def test_pickup_get_next_page(page_size, test_client): try: - pickups = test_client.pickup.all(page_size=page_size) - next_page = test_client.pickup.get_next_page(pickups=pickups, page_size=page_size) + first_page = test_client.pickup.all(page_size=page_size) + next_page = test_client.pickup.get_next_page(pickups=first_page, page_size=page_size) - first_id_of_first_page = pickups["pickups"][0].id + first_id_of_first_page = first_page["pickups"][0].id first_id_of_second_page = next_page["pickups"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) @pytest.mark.vcr() @@ -60,7 +64,7 @@ def test_pickup_retrieve(one_call_buy_shipment, basic_pickup, test_client): retrieved_pickup = test_client.pickup.retrieve(pickup.id) assert isinstance(retrieved_pickup, Pickup) - assert retrieved_pickup == pickup + assert retrieved_pickup.id == pickup.id @pytest.mark.vcr() diff --git a/tests/test_referral_customer.py b/tests/test_referral_customer.py index b75549a0..d7990b87 100644 --- a/tests/test_referral_customer.py +++ b/tests/test_referral_customer.py @@ -1,30 +1,30 @@ import os -from unittest.mock import patch import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) +from easypost.errors.api.api_error import ApiError from easypost.models import User - REFERRAL_CUSTOMER_PROD_API_KEY = os.getenv("REFERRAL_CUSTOMER_PROD_API_KEY", "123") @pytest.mark.vcr() -def test_referral_customer_create(partner_user_prod_client): +def test_referral_customer_create(partner_user_prod_client, referral_user): """This test requires a partner customer's production API key via PARTNER_USER_PROD_API_KEY.""" created_referral_customer = partner_user_prod_client.referral_customer.create( - name="test test", - email="test@test.com", - phone="8888888888", + name=referral_user["name"], + email=referral_user["email"], + phone=referral_user["phone"], ) assert isinstance(created_referral_customer, User) assert str.startswith(created_referral_customer.id, "user_") - assert created_referral_customer.name == "test test" + assert created_referral_customer.name == "Test Referral" @pytest.mark.vcr() @@ -56,65 +56,62 @@ def test_referral_customer_all(partner_user_prod_client, page_size): @pytest.mark.vcr() def test_referral_get_next_page(partner_user_prod_client, page_size): try: - referral_customers = partner_user_prod_client.referral_customer.all(page_size=page_size) + first_page = partner_user_prod_client.referral_customer.all(page_size=page_size) next_page = partner_user_prod_client.referral_customer.get_next_page( - referral_customers=referral_customers, page_size=page_size + referral_customers=first_page, page_size=page_size ) - first_id_of_first_page = referral_customers["referral_customers"][0].id + first_id_of_first_page = first_page["referral_customers"][0].id first_id_of_second_page = next_page["referral_customers"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) -# PyVCR is having troubles matching the body of the form-encoded data here, override the default -@pytest.mark.vcr( - match_on=[ - "headers", - "method", - "query", - "uri", - ] -) -def test_referral_customer_add_credit_card(partner_user_prod_client, credit_card_details): - """This test requires a partner customer's production API key via PARTNER_USER_PROD_API_KEY - as well as one of that customer's referral's production API keys via REFERRAL_CUSTOMER_PROD_API_KEY. +@pytest.mark.vcr() +def test_referral_customer_add_credit_card_from_stripe(partner_user_prod_client, credit_card_details, billing): + """This test requires a referral customer's production API key via REFERRAL_CUSTOMER_PROD_API_KEY. + + We expect this test to fail because we don't have valid billing details to use. Assert the correct error. """ - added_credit_card = partner_user_prod_client.referral_customer.add_credit_card( - referral_api_key=REFERRAL_CUSTOMER_PROD_API_KEY, - number=credit_card_details["number"], - expiration_month=credit_card_details["expiration_month"], - expiration_year=credit_card_details["expiration_year"], - cvc=credit_card_details["cvc"], - ) + with pytest.raises(ApiError) as error: + partner_user_prod_client.referral_customer.add_credit_card_from_stripe( + referral_api_key=REFERRAL_CUSTOMER_PROD_API_KEY, + payment_method_id=billing["payment_method_id"], + priority=billing["priority"], + ) - assert str.startswith(added_credit_card.id, "card_") - assert added_credit_card.last4 == "6170" + assert str(error.value) == "Stripe::PaymentMethod does not exist for the specified reference_id" -@patch("easypost.services.referral_customer_service.ReferralCustomerService._retrieve_easypost_stripe_api_key") -@patch( - "easypost.services.referral_customer_service.ReferralCustomerService._create_stripe_token", side_effect=Exception() -) -def test_referral_add_credit_card_error( - mock_stripe_token, - mock_easypost_key, - credit_card_details, - partner_user_prod_client, -): - """This test requires a partner customer's production API key via PARTNER_USER_PROD_API_KEY - as well as one of that customer's referral's production API keys via REFERRAL_CUSTOMER_PROD_API_KEY. +@pytest.mark.vcr() +def test_referral_customer_add_bank_account_from_stripe(partner_user_prod_client, credit_card_details, billing): + """This test requires a referral customer's production API key via REFERRAL_CUSTOMER_PROD_API_KEY. + + We expect this test to fail because we don't have valid billing details to use. Assert the correct error. """ - with pytest.raises(Exception) as error: - _ = partner_user_prod_client.referral_customer.add_credit_card( + with pytest.raises(ApiError) as error: + partner_user_prod_client.referral_customer.add_bank_account_from_stripe( referral_api_key=REFERRAL_CUSTOMER_PROD_API_KEY, - number=credit_card_details["number"], - expiration_month=credit_card_details["expiration_month"], - expiration_year=credit_card_details["expiration_year"], - cvc=credit_card_details["cvc"], + financial_connections_id=billing["financial_connections_id"], + mandate_data=billing["mandate_data"], + priority=billing["priority"], ) - assert str(error.value) == "Could not send card details to Stripe, please try again later." + assert ( + str(error.value) == "account_holder_name must be present when creating a Financial Connections payment method" + ) + + +@pytest.mark.vcr() +def test_referral_customer_retrieve_easypost_stripe_api_key(partner_user_prod_client): + """This test requires a partner customer's production API key via PARTNER_USER_PROD_API_KEY.""" + public_key = partner_user_prod_client.referral_customer.retrieve_easypost_stripe_api_key() + + assert isinstance(public_key, str) + assert public_key.startswith("pk_") diff --git a/tests/test_refund.py b/tests/test_refund.py index ff75a14c..16a751ce 100644 --- a/tests/test_refund.py +++ b/tests/test_refund.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -37,16 +38,19 @@ def test_refund_all(page_size, test_client): @pytest.mark.vcr() def test_refund_get_next_page(page_size, test_client): try: - refunds = test_client.refund.all(page_size=page_size) - next_page = test_client.refund.get_next_page(refunds=refunds, page_size=page_size) + first_page = test_client.refund.all(page_size=page_size) + next_page = test_client.refund.get_next_page(refunds=first_page, page_size=page_size) - first_id_of_first_page = refunds["refunds"][0].id + first_id_of_first_page = first_page["refunds"][0].id first_id_of_second_page = next_page["refunds"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) @pytest.mark.vcr() diff --git a/tests/test_report.py b/tests/test_report.py index a3097a6e..cda07a2b 100644 --- a/tests/test_report.py +++ b/tests/test_report.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -76,13 +77,20 @@ def test_report_all(report_type, page_size, test_client): @pytest.mark.vcr() def test_report_get_next_page(report_type, page_size, test_client): try: - reports = test_client.report.all(type=report_type, page_size=page_size) - next_page = test_client.report.get_next_page(reports=reports, page_size=page_size) + first_page = test_client.report.all(type=report_type, page_size=page_size) + next_page = test_client.report.get_next_page(reports=first_page, page_size=page_size) - first_id_of_first_page = reports["reports"][0].id + first_id_of_first_page = first_page["reports"][0].id first_id_of_second_page = next_page["reports"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] + + # Verify that the report type is being passed along for behind-the-scenes reference + assert first_page["filters"]["type"] == report_type + assert next_page["filters"]["type"] == report_type except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) diff --git a/tests/test_scan_form.py b/tests/test_scan_form.py index 5a7ea72d..2a87d728 100644 --- a/tests/test_scan_form.py +++ b/tests/test_scan_form.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -43,13 +44,16 @@ def test_scanform_all(page_size, test_client): @pytest.mark.vcr() def test_scanform_get_next_page(page_size, test_client): try: - scanforms = test_client.scan_form.all(page_size=page_size) - next_page = test_client.scan_form.get_next_page(scan_forms=scanforms, page_size=page_size) + first_page = test_client.scan_form.all(page_size=page_size) + next_page = test_client.scan_form.get_next_page(scan_forms=first_page, page_size=page_size) - first_id_of_first_page = scanforms["scan_forms"][0].id + first_id_of_first_page = first_page["scan_forms"][0].id first_id_of_second_page = next_page["scan_forms"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) diff --git a/tests/test_shipment.py b/tests/test_shipment.py index 1cac0b7b..3d557352 100644 --- a/tests/test_shipment.py +++ b/tests/test_shipment.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -51,16 +52,19 @@ def test_shipment_all(page_size, test_client): @pytest.mark.vcr() def test_shipment_get_next_page(page_size, test_client): try: - shipments = test_client.shipment.all(page_size=page_size) - next_page = test_client.shipment.get_next_page(shipments=shipments, page_size=page_size) + first_page = test_client.shipment.all(page_size=page_size) + next_page = test_client.shipment.get_next_page(shipments=first_page, page_size=page_size) - first_id_of_first_page = shipments["shipments"][0].id + first_id_of_first_page = first_page["shipments"][0].id first_id_of_second_page = next_page["shipments"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) @pytest.mark.vcr() @@ -194,14 +198,14 @@ def test_shipment_lowest_rate(full_shipment, test_client): # Test lowest rate with no filters lowest_rate = shipment.lowest_rate() - assert lowest_rate.service == "First" + assert lowest_rate.service == "GroundAdvantage" assert lowest_rate.rate == "6.07" assert lowest_rate.carrier == "USPS" # Test lowest rate with service filter (this rate is higher than the lowest but should filter) lowest_rate_service = shipment.lowest_rate(services=["Priority"]) assert lowest_rate_service.service == "Priority" - assert lowest_rate_service.rate == "7.15" + assert lowest_rate_service.rate == "7.42" assert lowest_rate_service.carrier == "USPS" # Test lowest rate with carrier filter (should error due to bad carrier) @@ -217,10 +221,10 @@ def test_shipment_lowest_smart_rate(basic_shipment, test_client): # Test lowest smart_rate with valid filters lowest_smart_rate_filters = test_client.shipment.lowest_smart_rate( shipment.id, - delivery_days=2, + delivery_days=3, delivery_accuracy="percentile_90", ) - assert lowest_smart_rate_filters["service"] == "First" + assert lowest_smart_rate_filters["service"] == "GroundAdvantage" assert lowest_smart_rate_filters["rate"] == 6.07 assert lowest_smart_rate_filters["carrier"] == "USPS" @@ -251,10 +255,10 @@ def test_shipment_get_lowest_smart_rate(basic_shipment, test_client): # Test lowest smart_rate with valid filters lowest_smart_rate_filters = get_lowest_smart_rate( smart_rates, - delivery_days=2, + delivery_days=3, delivery_accuracy="percentile_90", ) - assert lowest_smart_rate_filters["service"] == "First" + assert lowest_smart_rate_filters["service"] == "GroundAdvantage" assert lowest_smart_rate_filters["rate"] == 6.07 assert lowest_smart_rate_filters["carrier"] == "USPS" @@ -297,57 +301,67 @@ def test_shipment_generate_form(one_call_buy_shipment, rma_form_options, test_cl @pytest.mark.vcr() -def test_shipment_create_with_carbon_offset(basic_shipment, test_client): - shipment = test_client.shipment.create(with_carbon_offset=True, **basic_shipment) - - assert isinstance(shipment, Shipment) - assert shipment.rates is not None - assert all(rate.carbon_offset is not None for rate in shipment.rates) - +def test_shipment_buy_with_end_shipper_id(ca_address_1, basic_shipment, test_client): + end_shipper = test_client.end_shipper.create(**ca_address_1) -@pytest.mark.vcr() -def test_shipment_buy_with_carbon_offset(basic_shipment, test_client): shipment = test_client.shipment.create(**basic_shipment) - bought_shipment = test_client.shipment.buy(shipment.id, rate=shipment.lowest_rate(), with_carbon_offset=True) + bought_shipment = test_client.shipment.buy( + shipment.id, rate=shipment.lowest_rate(), end_shipper_id=end_shipper["id"] + ) - assert isinstance(bought_shipment, Shipment) - assert any(fee.type == "CarbonOffsetFee" for fee in bought_shipment.fees) + assert bought_shipment.postage_label is not None @pytest.mark.vcr() -def test_shipment_one_call_buy_with_carbon_offset(one_call_buy_shipment, test_client): - shipment = test_client.shipment.create(with_carbon_offset=True, **one_call_buy_shipment) +def test_shipment_retrieve_estimated_delivery_date(basic_shipment, planned_ship_date, test_client): + """Tests that we retrieve time-in-transit data for each of the Rates of a Shipment.""" + shipment = test_client.shipment.create(**basic_shipment) - assert isinstance(shipment, Shipment) - assert all(rate.carbon_offset is not None for rate in shipment.rates) + rates = test_client.shipment.retrieve_estimated_delivery_date(shipment.id, planned_ship_date=planned_ship_date) + + assert all(entry.get("easypost_time_in_transit_data") for entry in rates) @pytest.mark.vcr() -def test_shipment_rerate_with_carbon_offset(one_call_buy_shipment, test_client): - shipment = test_client.shipment.create(**one_call_buy_shipment) +def test_shipment_recommend_ship_date(basic_shipment, desired_delivery_date, test_client): + """Test that we retrieve SmartRates when providing a shipment and desired delivery date.""" + shipment = test_client.shipment.create(**basic_shipment) - new_carbon_rates = test_client.shipment.regenerate_rates(shipment.id, with_carbon_offset=True) + rates = test_client.shipment.recommend_ship_date(shipment.id, desired_delivery_date=desired_delivery_date) - assert all(rate.carbon_offset is not None for rate in new_carbon_rates.rates) + assert all(entry.get("easypost_time_in_transit_data") for entry in rates) @pytest.mark.vcr() -def test_shipment_buy_with_end_shipper_id(ca_address_1, basic_shipment, test_client): - end_shipper = test_client.end_shipper.create(**ca_address_1) +def test_shipment_create_and_buy_luma( + one_call_buy_shipment, + luma_ruleset_name, + luma_planned_ship_date, + test_client, +): + """Test that we create and buy a Shipment with Luma.""" + del one_call_buy_shipment["service"] + one_call_buy_shipment["ruleset_name"] = luma_ruleset_name + one_call_buy_shipment["planned_ship_date"] = luma_planned_ship_date + shipment = test_client.shipment.create_and_buy_luma(**one_call_buy_shipment) - shipment = test_client.shipment.create(**basic_shipment) - bought_shipment = test_client.shipment.buy( - shipment.id, rate=shipment.lowest_rate(), end_shipper_id=end_shipper["id"] - ) - - assert bought_shipment.postage_label is not None + assert shipment.postage_label is not None @pytest.mark.vcr() -def test_retrieve_estimated_delivery_date(basic_shipment, planned_ship_date, test_client): - """Tests that we retrieve time-in-transit data for each of the Rates of a Shipment.""" +def test_shipment_buy_luma( + basic_shipment, + luma_ruleset_name, + luma_planned_ship_date, + test_client, +): + """Test that we buy a Shipment with Luma.""" shipment = test_client.shipment.create(**basic_shipment) - rates = test_client.shipment.retrieve_estimated_delivery_date(shipment.id, planned_ship_date=planned_ship_date) + bought_shipment = test_client.shipment.buy_luma( + shipment.id, + ruleset_name=luma_ruleset_name, + planned_ship_date=luma_planned_ship_date, + ) - assert all(entry.get("easypost_time_in_transit_data") for entry in rates) + assert bought_shipment.postage_label is not None diff --git a/tests/test_smartrate.py b/tests/test_smartrate.py new file mode 100644 index 00000000..8ab2d1e0 --- /dev/null +++ b/tests/test_smartrate.py @@ -0,0 +1,45 @@ +import pytest + + +@pytest.mark.vcr() +def test_smartrate_estimate_delivery_date( + basic_shipment, + ca_address_1, + ca_address_2, + planned_ship_date, + usps, + test_client, +): + """Test that we retrieve SmartRates when provided a from/to zip and planned ship date.""" + params = { + "from_zip": ca_address_1["zip"], + "to_zip": ca_address_2["zip"], + "planned_ship_date": planned_ship_date, + "carriers": [usps], + } + + rates = test_client.smart_rate.estimate_delivery_date(**params) + + assert all(entry.get("easypost_time_in_transit_data") for entry in rates["results"]) + + +@pytest.mark.vcr() +def test_smartrate_recommend_ship_date( + basic_shipment, + ca_address_1, + ca_address_2, + desired_delivery_date, + usps, + test_client, +): + """Test that we retrieve SmartRates when provided a from/to zip and desired delivery date.""" + params = { + "from_zip": ca_address_1["zip"], + "to_zip": ca_address_2["zip"], + "desired_delivery_date": desired_delivery_date, + "carriers": [usps], + } + + rates = test_client.smart_rate.recommend_ship_date(**params) + + assert all(entry.get("easypost_time_in_transit_data") for entry in rates["results"]) diff --git a/tests/test_tracker.py b/tests/test_tracker.py index 2899fda1..f57468a7 100644 --- a/tests/test_tracker.py +++ b/tests/test_tracker.py @@ -1,6 +1,7 @@ import pytest from easypost.constant import ( + _FILTERS_KEY, _TEST_FAILED_INTENTIONALLY_ERROR, NO_MORE_PAGES_ERROR, ) @@ -38,31 +39,38 @@ def test_tracker_all(page_size, test_client): assert all(isinstance(tracker, Tracker) for tracker in trackers_array) +@pytest.mark.vcr() +def test_tracker_retrieve_batch(page_size, test_client): + tracker = test_client.tracker.create(tracking_code="EZ1000000001") + + trackers = test_client.tracker.retrieve_batch(tracking_codes=[tracker.tracking_code]) + + trackers_array = trackers["trackers"] + + assert all(isinstance(tracker, Tracker) for tracker in trackers_array) + + @pytest.mark.vcr() def test_tracker_get_next_page(page_size, test_client): try: - trackers = test_client.tracker.all(page_size=page_size) - next_page = test_client.tracker.get_next_page(trackers=trackers, page_size=page_size) + first_page = test_client.tracker.all(page_size=page_size) + next_page = test_client.tracker.get_next_page(trackers=first_page, page_size=page_size) - first_id_of_first_page = trackers["trackers"][0].id + first_id_of_first_page = first_page["trackers"][0].id first_id_of_second_page = next_page["trackers"][0].id assert first_id_of_first_page != first_id_of_second_page + + # Verify that the filters are being passed along for behind-the-scenes reference + assert first_page[_FILTERS_KEY] == next_page[_FILTERS_KEY] except Exception as e: if e.message != NO_MORE_PAGES_ERROR: - raise Exception(message=_TEST_FAILED_INTENTIONALLY_ERROR) + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) @pytest.mark.vcr() -def test_tracker_create_list(test_client): - """Tests that we can create a list of trackers in bulk.""" - try: - test_client.tracker.create_list( - { - "0": {"tracking_code": "EZ1000000001"}, - "1": {"tracking_code": "EZ1000000002"}, - "2": {"tracking_code": "EZ1000000003"}, - } - ) - except Exception: - assert False +def test_tracker_delete(test_client): + tracker = test_client.tracker.create(tracking_code="EZ1000000001") + + # Nothing gets returned here, simply ensure no error gets raised + test_client.tracker.delete(tracker.id) diff --git a/tests/test_user.py b/tests/test_user.py index 9d3ecc2d..deab7f4a 100644 --- a/tests/test_user.py +++ b/tests/test_user.py @@ -1,7 +1,10 @@ import pytest +from easypost.constant import ( + _TEST_FAILED_INTENTIONALLY_ERROR, + NO_MORE_PAGES_ERROR, +) from easypost.models import ( - ApiKey, Brand, User, ) @@ -68,46 +71,40 @@ def test_user_delete(prod_client): @pytest.mark.vcr() -def test_user_all_api_keys(prod_client): - """Tests that we can retrieve all API keys.""" - api_keys = prod_client.user.all_api_keys() - - assert all(isinstance(key, ApiKey) for key in api_keys.keys) - for child in api_keys.children: - assert all(isinstance(key, ApiKey) for key in child["keys"]) +def test_user_update_brand(prod_client): + user = prod_client.user.retrieve_me() + color = "#123456" -@pytest.mark.vcr() -def test_authenticated_user_api_keys(prod_client): - """Tests that we can retrieve the authenticated user's API keys.""" - user = prod_client.user.retrieve_me() - api_keys = prod_client.user.api_keys(user.id) + brand = prod_client.user.update_brand(user.id, color=color) - assert all(isinstance(key, ApiKey) for key in api_keys) + assert isinstance(brand, Brand) + assert str.startswith(brand.id, "brd_") + assert brand.color == color @pytest.mark.vcr() -def test_child_user_api_keys(prod_client): - """Tests that we can retrieve a child user's API keys as the parent.""" - user = prod_client.user.create(name="Test User") - child_user = prod_client.user.retrieve(user.id) +def test_user_all_children(prod_client, page_size): + children_data = prod_client.user.all_children(page_size=page_size) - api_keys = prod_client.user.api_keys(child_user.id) + children_array = children_data["children"] + assert len(children_array) <= page_size + assert all(isinstance(child, User) for child in children_array) - assert all(isinstance(key, ApiKey) for key in api_keys) - - # Delete the user so we don't clutter up the test environment - prod_client.user.delete(child_user.id) + has_more = children_data["has_more"] + assert isinstance(has_more, bool) @pytest.mark.vcr() -def test_user_update_brand(prod_client): - user = prod_client.user.retrieve_me() - - color = "#123456" - - brand = prod_client.user.update_brand(user.id, color=color) - - assert isinstance(brand, Brand) - assert str.startswith(brand.id, "brd_") - assert brand.color == color +def test_user_children_get_next_page(prod_client, page_size): + try: + first_page = prod_client.user.all_children(page_size=page_size) + next_page = prod_client.user.get_next_page_of_children(children=first_page, page_size=page_size) + + first_id_of_first_page = first_page["children"][0].id + first_id_of_second_page = next_page["children"][0].id + + assert first_id_of_first_page != first_id_of_second_page + except Exception as e: + if e.message != NO_MORE_PAGES_ERROR: + raise Exception(_TEST_FAILED_INTENTIONALLY_ERROR) diff --git a/tests/test_webhook.py b/tests/test_webhook.py index 70b5e861..13c5e648 100644 --- a/tests/test_webhook.py +++ b/tests/test_webhook.py @@ -6,12 +6,18 @@ @pytest.mark.vcr() -def test_webhook_create(webhook_url, test_client): - webhook = test_client.webhook.create(url=webhook_url) +def test_webhook_create(webhook_url, webhook_secret, webhook_custom_headers, test_client): + webhook = test_client.webhook.create( + url=webhook_url, + webhook_secret=webhook_secret, + custom_headers=webhook_custom_headers, + ) assert isinstance(webhook, Webhook) assert str.startswith(webhook.id, "hook_") assert webhook.url == webhook_url + assert webhook.custom_headers[0]["name"] == "test" + assert webhook.custom_headers[0]["value"] == "header" test_client.webhook.delete( webhook.id @@ -43,11 +49,17 @@ def test_webhook_all(page_size, test_client): @pytest.mark.vcr() -def test_webhook_update(webhook_url, test_client): +def test_webhook_update(webhook_url, webhook_secret, webhook_custom_headers, test_client): webhook = test_client.webhook.create(url=webhook_url) - test_client.webhook.update(webhook.id) + updated_webhook = test_client.webhook.update( + webhook.id, + webhook_secret=webhook_secret, + custom_headers=webhook_custom_headers, + ) - assert isinstance(webhook, Webhook) + assert isinstance(updated_webhook, Webhook) + assert updated_webhook.custom_headers[0]["name"] == "test" + assert updated_webhook.custom_headers[0]["value"] == "header" test_client.webhook.delete( webhook.id @@ -64,11 +76,9 @@ def test_webhook_delete(webhook_url, test_client): assert False -def test_validate_webhook(event_bytes): - webhook_secret = "sécret" - expected_hmac_signature = "hmac-sha256-hex=e93977c8ccb20363d51a62b3fe1fc402b7829be1152da9e88cf9e8d07115a46b" +def test_validate_webhook(event_bytes, webhook_secret, webhook_hmac_signature): headers = { - "X-Hmac-Signature": expected_hmac_signature, + "X-Hmac-Signature": webhook_hmac_signature, } webhook_body = validate_webhook( @@ -77,7 +87,8 @@ def test_validate_webhook(event_bytes): webhook_secret=webhook_secret, ) - assert webhook_body["description"] == "batch.created" + assert webhook_body["description"] == "tracker.updated" + assert webhook_body["result"]["weight"] == 614.4 # Ensure we convert floats properly def test_validate_webhook_invalid_secret(event_bytes):