Releases: karrioapi/karrio
Purplship Shipping Platform Edition 2022.2
Road to cloud beta
- Consolidate email flows for operations that require confirmations
- Consolidate organization and team management (
insiders)- Organization members listing and invitation
- Organization ownership transfer
- Organization creation
- Setup foundations for oauth2 and apps integration (beta) (
insiders) - Implement Webhook secret header for event origin signature validation
- Integrate One-call shipment label purchase
- Automate incremental tracking_number generation for customs carrier labels
- Order management update (
insiders)- Introduce
shipping_fromfor orginin address prefill - Rename
shipping_addresstoshipping_to
- Introduce
Breaking changes
-
The GraphQL API queries and mutations have been enhanced and some renamed for consistency.
We highly recommend using the same version on the server and dashboard -
Introduce
docs: Documents = JStruct[Documents, REQUIRED]toShipmentDetails
The implied the removal of the label: str field from the root of ShipmentDetails to ShipmentDetails.docs.label
Proxy API POST /v1/proxy/shiping now returns as docs object with label base64 string and optionally an invoice base64 string
API Shipment object now returns
- label_url: URL to the purchase shipment label
- invoice_url: URL to the purchase shipment invoice when supported
API Shipment deprecated data
- label field has been deprecated and removed in order to optimize shipments database queries and size
- shipment.meta.invoice field has been deprecated and removed for optimization as well
As a result of this change, shipments requests are less heavy and faster
Bugs
- Inconsistent Charfield validation caused validity pre-request and failure to persist carrier API changes to the database.
Docker builds
Current release 2022.2 - danh91.docker.scarf.sh/purplship/server:2022.2
Purplship Shipping Platform Edition 2022.1
What's New
- Introduce
purplship.genericthe custom carrier extension - Add support for custom carrier definition on purplship server
- Enrich parcel (package) definition for better support of pallets
- Enhance purplship universal extension support with multi-piece shipment support
- Introduce order APIs for the relation between order systems and purplship shipments
- Introduce label template configuration and custom label generation
- Introduce support adding user metadata to purplship objects (
Order,Tracker,Commodity,Shipment...)
Breaking changes
The Shipping REST APIs are focused on automation and single requests to perform shipping operations. The GraphQL API on the other hand powers manual operations from the dashboard with multiple mutations of shipping objects.
For that reason
- The following endpoints have been removed
/v1/shipments/<id>/optionsto update/add shipment options/v1/shipments/<id>/customsto add shipment customs declaration/v1/shipments/<id>/parcelsto add shipment parcels
There has been many breaking changes on mutations and queries on the GraphQL API so we recommend checking out the 2022.1.4 purplship dashboard release
Patch & bug fixes
- Update support for multi-tenant deployment
- Prevent automatic tracker creation issues for carriers without
trackingcapabilities - Fix supported destination check for
USPSdomestic extension - Fix background tracker processing error caused uncaught by dead code
Docker builds
Stable version 2022.1.4
danh91.docker.scarf.sh/purplship/server:2022.1.4
Purplship Shipping Platform Edition 2021.11
What's New
- Apply Canadian postal code pre-validation patch
- Improve Trackers API to accept tracking numbers without a record as pending
- Retrieved
estimated_deliveryduring tracking for all supporting carriers - Ensure FedEx dimension definitions only when
packaging_typeisyour_packaging - Introduced Persisted events
- Improve FedEx multi-piece shipment compiling all package labels together
- Introduce DHL Parcel Poland
sponsoredintegration (https://github.com/purplship/purplship/issues/166) - Introduce the purplship universal carrier service level definition
- Apply (2121.7.7) database query perf improvements
- Introduce
TRACKING_PULSEenv var to setup background trackers update interval seconds - Introduce
BASE_PATHenv var to set up runtime base path for the API (e.g:/apiforexample.com/apideployment) - Introduce advanced query filters for shipments, logs, events, trackers and webhooks
Bugs
- Fix Webhooks notification scope only to related account and organization
Purplship Shipping Platform Edition 2021.10
What's New
- Enrich
/api/referencesendpoint with application metadata info (APP_NAME,APP_VERSION,APP_WEBSITEand other feature flags) - Enhance JWT refresh with support for org switching by providing
org_id - Improve OpenAPI docs with existing extensions
carrier_name(s) and shipments and trackers filters status enums - Remove authentication requirement from
/v1/trackers/{id_or_tracking_number}to simplify trackers access to frontend components - Remove authentication requirement from
/api/referencesas it serves as the server metadata now and share any user private info - Change authentication rules for Graphql view (
/graphql)- The GraphQL Playground can be accessed without being authenticated
- However, an authentication header is required now to send authenticated requests and receive users owned data
- Introduce user registration, password change, password reset and more through GraphQL mutations
- Remove purplship embedded client moving the codebase to https://github.com/purplship/purplship-dashboard
Bug Fixes
- Fix circular reference on GraphQL system
carrier.carrier_nameproperty - Fix bugs with exception raised when there is an existing carrier connection in test mode and not live
Dev Ex
- Switched to mono repo bringing
purplship-carriers,purplship-bridges,purplship-serverand all other satellite projects underpurplship(this simplifies the development process) - Improve PHP and Python client generator script options
- Improve docker setup for local developments
- Improve docker setup for testing with the same config as production (went from
6 minbuild + test time to2 min) - Change namespaces for consistent branding (went from
purpleserver.*->purplship.server.*) - add as shared .vscode configuration.
- Fix JWT regression caused by
PyJWTdependency - Enhance Docker image startup and graceful-stop with dumb-init
purplship SDK 2021.8
What's new?
- Increase JSON API response parsing resilience by introducing
to_objecthelper that ignores unknown model fields - Use
NamedTupleto define MeasurementOptionsType instead ofEnum - Add .vscode config to improve dev ex
- Add alpha integration for
ICS Courier,UPS GroundandAsendia US
purplship SDK 2021.7
Changes
- Apply flexible service mapping to all carrier integrations. (meaning that if the carrier introduces a service not mapped by purplship, it will still be handled gracefully by collecting the code required for the shipment creation)
- Add DHL customs invoice when returned by international shipments
- Introduced
account_country_codeas base property to all carrier settings. (This is useful for country-specific carrier accounts) - Deprecate
gateway.featuresin favor ofgateway.capabilitiesto describe the list of supported operations by carrier gateways - Add pre requests check hooks to validate early carrier gateways capability support as well as country-bounded account usage.
- Improve the email notification option
- enabled by default if a recipient email is provided
- turn the notification off
options: { ..., email_notification: false, ..} - set specific email for notification
options: { ..., email_notification_to: custom@email.com, ..}
Fixes
- Fix shipment reference for all carriers
- Fix Purolator shipment creation error detection for proper parsing
purplship SDK 2021.6
Changes
- Fix FedEx label format
- Add human-readable names for options and services
- Add blank Purolator label for test mode since label is not supported with the sandbox server
- Live tested USPS rating and shipping integration
- Rename
purolator_courrierextension topurolator - Make Purolator setting
user_tokenoptional - Fix Fedex rate timestamp parsing to prevent 0-day returns
- Fix DHL preset default units with the right package sizes
- Add omitted
contract_idto Canada post extension for rate requests - Add min dimensions values for FedEx dimension mappers
- Handle Optional adjustments values for Canada post rate response
Purplship SDK 2021.4
What's new
- Enrich customs declaration unified model
- Separate duty definition from the shipment payment model
- Introduce AddressExtra and a helper to compute address line based on extra
Purplship SDK 2021.3
Changes
- Integrate TNT services (Tracking )
- Prepare USPS rating and shipping integration and split up international and local
- Rename
ups_package->ups - Rename
fedex_express->fedex
Purplship SDK 2021.2 [tracking spree]
Carrier Tracking service integration spree
- integrate
aramexTracking API - update
canparFull API integration - integrate
australiapostTracking API - integrate
dhl_universalTracking API - integrate
dicomTracking API - integrate
uspsTracking API - integrate
dicomTracking API - integrate
sendleTracking API - integrate
sf_expressTracking API - integrate
yanwenTracking API - integrate
yunexpressTracking API
Other
- Introduce the concept of features for gateways to show supported APIs dynamically
- Make Purolator
user_tokenrequired to set up a Purolator gateway - Improve canpar's SOAP requests ensuring proper namespace prefixes for all nodes