From c2bdae2be5f5567fafc343303b816180215eb066 Mon Sep 17 00:00:00 2001 From: Ayden Date: Tue, 10 Feb 2026 17:08:20 +0000 Subject: [PATCH 1/3] feat: add vessel tags param to CargoMovement --- vortexasdk/endpoints/cargo_movements.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/vortexasdk/endpoints/cargo_movements.py b/vortexasdk/endpoints/cargo_movements.py index 214402b7..bcb0b143 100644 --- a/vortexasdk/endpoints/cargo_movements.py +++ b/vortexasdk/endpoints/cargo_movements.py @@ -8,7 +8,7 @@ from typing import Any, Dict, List, Optional, Union from vortexasdk.api import ID -from vortexasdk.api.shared_types import to_ISODate +from vortexasdk.api.shared_types import Tag, to_ISODate from vortexasdk.endpoints.cargo_movements_result import CargoMovementsResult from vortexasdk.endpoints.endpoints import ( CARGO_MOVEMENTS_RESOURCE, @@ -64,6 +64,7 @@ def search( filter_vessel_flags: Optional[Union[ID, List[ID]]] = None, filter_vessel_ice_class: Optional[Union[ID, List[ID]]] = None, filter_vessel_propulsion: Optional[Union[ID, List[ID]]] = None, + filter_vessel_tags: Optional[Union[List[Tag], Tag]] = None, exclude_origins: Optional[Union[ID, List[ID]]] = None, exclude_destinations: Optional[Union[ID, List[ID]]] = None, exclude_products: Optional[Union[ID, List[ID]]] = None, @@ -79,6 +80,7 @@ def search( exclude_vessel_flags: Optional[Union[ID, List[ID]]] = None, exclude_vessel_ice_class: Optional[Union[ID, List[ID]]] = None, exclude_vessel_propulsion: Optional[Union[ID, List[ID]]] = None, + exclude_vessel_tags: Optional[Union[List[Tag], Tag]] = None, disable_geographic_exclusion_rules: Optional[bool] = None, intra_movements: Optional[str] = None, quantity_at_time_of: str = "load", @@ -139,6 +141,8 @@ def search( filter_vessel_propulsion: An attribute ID, or list of attribute IDs to filter on. + filter_vessel_tags: A time bound vessel tag, or list of time bound vessel tags to filter on. + exclude_origins: A geography ID, or list of geography IDs to exclude. exclude_destinations: A geography ID, or list of geography IDs to exclude. @@ -167,6 +171,8 @@ def search( exclude_vessel_propulsion: An attribute ID, or list of attribute IDs to exclude. + exclude_vessel_tags: A time bound vessel tag, or list of time bound vessel tags to exclude. + disable_geographic_exclusion_rules: This controls a popular industry term "intra-movements" and determines the filter behaviour for cargo leaving then entering the same geographic area. @@ -310,6 +316,8 @@ def search( "filter_vessel_propulsion": convert_to_list( filter_vessel_propulsion ), + "vessel_tags": convert_to_list(filter_vessel_tags), + "vessel_tags_excluded": convert_to_list(exclude_vessel_tags), "exclude": exclude_params, "disable_geographic_exclusion_rules": disable_geographic_exclusion_rules, "intra_movements": intra_movements, From 670ceaecc3d436a5eb8ad6b4fdc5e19861d2ff9e Mon Sep 17 00:00:00 2001 From: Ayden Date: Tue, 10 Feb 2026 17:15:10 +0000 Subject: [PATCH 2/3] chore: increase version number --- vortexasdk/version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vortexasdk/version.py b/vortexasdk/version.py index 85100980..441304cd 100644 --- a/vortexasdk/version.py +++ b/vortexasdk/version.py @@ -1 +1 @@ -__version__ = "1.0.17" +__version__ = "1.0.18" From beddf7ce89c19ea6eac28401d35cb838b156ea49 Mon Sep 17 00:00:00 2001 From: Ayden Date: Tue, 10 Feb 2026 17:16:30 +0000 Subject: [PATCH 3/3] chore: code improvements --- vortexasdk/endpoints/cargo_movements.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vortexasdk/endpoints/cargo_movements.py b/vortexasdk/endpoints/cargo_movements.py index bcb0b143..d8ef52d4 100644 --- a/vortexasdk/endpoints/cargo_movements.py +++ b/vortexasdk/endpoints/cargo_movements.py @@ -64,7 +64,7 @@ def search( filter_vessel_flags: Optional[Union[ID, List[ID]]] = None, filter_vessel_ice_class: Optional[Union[ID, List[ID]]] = None, filter_vessel_propulsion: Optional[Union[ID, List[ID]]] = None, - filter_vessel_tags: Optional[Union[List[Tag], Tag]] = None, + filter_vessel_tags: Optional[Union[Tag, List[Tag]]] = None, exclude_origins: Optional[Union[ID, List[ID]]] = None, exclude_destinations: Optional[Union[ID, List[ID]]] = None, exclude_products: Optional[Union[ID, List[ID]]] = None, @@ -80,7 +80,7 @@ def search( exclude_vessel_flags: Optional[Union[ID, List[ID]]] = None, exclude_vessel_ice_class: Optional[Union[ID, List[ID]]] = None, exclude_vessel_propulsion: Optional[Union[ID, List[ID]]] = None, - exclude_vessel_tags: Optional[Union[List[Tag], Tag]] = None, + exclude_vessel_tags: Optional[Union[Tag, List[Tag]]] = None, disable_geographic_exclusion_rules: Optional[bool] = None, intra_movements: Optional[str] = None, quantity_at_time_of: str = "load",