vortexasdk.endpoints.voyages_product_breakdown
Try me out in your browser:
VoyagesProductBreakdown
VoyagesProductBreakdown(self,
second_breakdown: typing.Optional[str] = None)
VoyagesProductBreakdown class has an optional second_breakdown property.
Please note: you will require a subscription to our Freight module to access this endpoint.
Arguments
second_breakdown: An optional second breakdown property. Can be: `'status'`.
search
VoyagesProductBreakdown.search(
breakdown_product: str,
breakdown_size: typing.Optional[int] = None,
time_min: datetime = datetime.datetime(2024, 1, 1, 0, 0),
time_max: datetime = datetime.datetime(2024, 3, 31, 1, 0),
voyage_id: typing.Union[str, typing.List[str], NoneType] = None,
cargo_movement_id: typing.Union[str, typing.List[str], NoneType] = None,
voyage_status: typing.Union[str, typing.List[str], NoneType] = None,
voyage_status_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
movement_status: typing.Union[str, typing.List[str], NoneType] = None,
movement_status_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
cargo_status: typing.Union[str, typing.List[str], NoneType] = None,
cargo_status_excluded: typing.Union[str, typing.List[str], NoneType] = None,
location_status: typing.Union[str, typing.List[str], NoneType] = None,
location_status_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
commitment_status: typing.Union[str, typing.List[str], NoneType] = None,
commitment_status_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
exclude_overlapping_entries: typing.Optional[bool] = None,
products: typing.Union[str, typing.List[str], NoneType] = None,
products_excluded: typing.Union[str, typing.List[str], NoneType] = None,
latest_products: typing.Union[str, typing.List[str], NoneType] = None,
latest_products_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
charterers: typing.Union[str, typing.List[str], NoneType] = None,
charterers_excluded: typing.Union[str, typing.List[str], NoneType] = None,
effective_controllers: typing.Union[str, typing.List[str], NoneType] = None,
effective_controllers_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
origins: typing.Union[str, typing.List[str], NoneType] = None,
origins_excluded: typing.Union[str, typing.List[str], NoneType] = None,
destinations: typing.Union[str, typing.List[str], NoneType] = None,
destinations_excluded: typing.Union[str, typing.List[str], NoneType] = None,
voyage_origins: typing.Union[str, typing.List[str], NoneType] = None,
voyage_origins_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
voyage_destinations: typing.Union[str, typing.List[str], NoneType] = None,
voyage_destinations_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
locations: typing.Union[str, typing.List[str], NoneType] = None,
locations_excluded: typing.Union[str, typing.List[str], NoneType] = None,
congestion_target_location:
typing.Union[str, typing.List[str], NoneType] = None,
congestion_target_location_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
vessels: typing.Union[str, typing.List[str], NoneType] = None,
vessels_excluded: typing.Union[str, typing.List[str], NoneType] = None,
flags: typing.Union[str, typing.List[str], NoneType] = None,
flags_excluded: typing.Union[str, typing.List[str], NoneType] = None,
ice_class: typing.Union[str, typing.List[str], NoneType] = None,
ice_class_excluded: typing.Union[str, typing.List[str], NoneType] = None,
vessel_propulsion: typing.Union[str, typing.List[str], NoneType] = None,
vessel_propulsion_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
vessel_age_min: typing.Optional[int] = None,
vessel_age_max: typing.Optional[int] = None,
vessel_dwt_min: typing.Optional[int] = None,
vessel_dwt_max: typing.Optional[int] = None,
vessel_cbm_min: typing.Optional[int] = None,
vessel_cbm_max: typing.Optional[int] = None,
vessel_wait_time_min: typing.Optional[int] = None,
vessel_wait_time_max: typing.Optional[int] = None,
vessel_scrubbers: typing.Optional[str] = None,
vessel_tags:
typing.Union[typing.List[vortexasdk.api.shared_types.Tag], vortexasdk.api.shared_types.Tag, NoneType] = None,
vessel_tags_excluded:
typing.Union[typing.List[vortexasdk.api.shared_types.Tag], vortexasdk.api.shared_types.Tag, NoneType] = None,
vessel_risk_level: typing.Union[str, typing.List[str], NoneType] = None,
vessel_risk_level_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
has_ship_to_ship: typing.Optional[bool] = None,
has_charterer: typing.Optional[bool] = None,
vessel_owners: typing.Union[str, typing.List[str], NoneType] = None,
vessel_owners_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
time_charterer: typing.Union[str, typing.List[str], NoneType] = None,
time_charterer_excluded:
typing.Union[str, typing.List[str], NoneType] = None,
intra_movements: typing.Optional[str] = None,
voyage_date_range_activity:
typing.Optional[vortexasdk.api.shared_types.VoyageDateRangeActivity] = None,
origin_behaviour:
typing.Optional[vortexasdk.api.shared_types.OriginBehaviour] = None,
destination_behaviour:
typing.Optional[vortexasdk.api.shared_types.DestinationBehaviour] = None)
Returns buckets by frequency of specified metric, each bucket includes breakdown by specified breakdown_property of a metric.
Arguments
breakdown_product: Determines the product layer of the breakdown.
breakdown_size: Optional number of top hits to return.
time_min: The UTC start date of the time filter.
time_max: The UTC end date of the time filter.
voyage_id: An array of unique voyage ID(s) to filter on.
cargo_movement_id: An array of unique cargo movement ID(s) to filter on.
voyage_status: A voyage status, or list of voyage statuses to filter on. Can be one of: `'ballast'`, `'laden'`.
voyage_status_excluded: A voyage status, or list of voyage statuses to exclude.
movement_status: A movement status, or list of movement statuses to filter on. Can be one of: `'moving'`, `'stationary'`, `'waiting'`, `'congestion'`, `'slow'`.
movement_status_excluded: A movement status, or list of movement statuses to exclude.
cargo_status: A cargo status, or list of cargo statuses to filter on. Can be one of: `'in-transit'`, `'floating-storage'`, `'loading'`, `'discharging'`.
cargo_status_excluded: A cargo status, or list of cargo statuses to exclude.
location_status: A location status, or list of location statuses to filter on. Can be one of: `'berth'`, `'anchorage-zone'`, `'dry-dock'`, `'on-the-sea'`.
location_status_excluded: A location status, or list of location statuses to exclude.
commitment_status: A commitment status, or list of commitment statuses to filter on. Can be one of: `'committed'`, `'uncommitted'`, `'open'`, `'unknown'`.
commitment_status_excluded: A commitment status, or list of commitment statuses to exclude.
exclude_overlapping_entries: A boolean to only consider the latest voyage in days where two or more Voyages overlap.
products: A product ID, or list of product IDs to filter on.
products_excluded: A product ID, or list of product IDs to exclude.
latest_products: A product ID, or list of product IDs of the latest cargo on board to filter on.
latest_products_excluded: A product ID, or list of product IDs of the latest cargo on board to exclude.
charterers: A charterer ID, or list of charterer IDs to filter on.
charterers_excluded: A charterer ID, or list of charterer IDs to exclude.
time_charterer: A time charterer ID, or list of time charterer IDs to filter on.
time_charterer_excluded: A time charterer ID, or list of time charterer IDs to exclude.
effective_controllers: A vessel effective controller ID, or list of vessel effective controller IDs to filter on.
effective_controllers_excluded: A effective controller ID, or list of effective controller IDs to exclude.
vessel_owners: A vessel owner ID, or list of vessel owners IDs to filter on.
vessel_owners_excluded: A vessel owner ID, or list of vessel owners IDs to exclude.
origins: An origin ID, or list of origin IDs for all the cargoes of a voyage to filter on.
origins_excluded: An origin ID, or list of origin IDs for all the cargoes of a voyage to exclude.
destinations: A destination ID, or list of destination IDs for all the cargoes of a voyage to filter on.
destinations_excluded: A destination ID, or list of destination IDs for all the cargoes of a voyage to exclude.
voyage_origins: An origin ID, or list of origin IDs for the first origin of voyage to filter on.
voyage_origins_excluded: An origin ID, or list of origin IDs for the first origin of voyage to exclude.
voyage_destinations: A destination ID, or list of destination IDs for the last destination of a voyage to filter on.
voyage_destinations_excluded: A destination ID, or list of destination IDs for the final destination of a voyage to exclude.
locations: A location ID, or list of location IDs to filter on.
locations_excluded: A location ID, or list of location IDs to exclude.
congestion_target_location: A congestion location ID, or list of congestion location IDs to filter on.
congestion_target_location_excluded: A congestion location ID, or list of congestion location IDs to exclude.
vessels: A vessel ID or vessel class, or list of vessel IDs/vessel classes to filter on.
vessels_excluded: A vessel ID or vessel class, or list of vessel IDs/vessel classes to exclude.
flags: A flag, or list of flags to filter on.
flags_excluded: A flag, or list of flags to exclude.
ice_class: An ice class, or list of ice classes to filter on.
ice_class_excluded: An ice class, or list of ice classes to ęxclude.
vessel_propulsion: A propulsion method, or list of propulsion methods to filter on.
vessel_propulsion_excluded: A propulsion method, or list of propulsion methods to ęxclude.
vessel_age_min: A number between 1 and 100 (representing years).
vessel_age_max: A number between 1 and 100 (representing years).
vessel_dwt_min: A number representing minimum deadweight tonnage of a vessel.
vessel_dwt_max: A number representing maximum deadweight tonnage of a vessel.
vessel_cbm_min: A number representing minimum cubic capacity of a vessel.
vessel_cbm_max: A number representing maximum cubic capacity of a vessel.
vessel_wait_time_min: A number representing a minimum number of days until a vessel becomes available.
vessel_wait_time_max: A number representing a maximum number of days until a vessel becomes available.
vessel_scrubbers: Either inactive 'disabled', or included 'inc' or excluded 'exc'.
vessel_tags: A time bound vessel tag, or list of time bound vessel tags to filter on.
vessel_tags_excluded: A time bound vessel tag, or list of time bound vessel tags to exclude.
vessel_risk_level: A vessel risk level, or list of vessel risk levels to filter on.
vessel_risk_level_excluded: A vessel risk level, or list of vessel risk levels to exclude.
has_ship_to_ship: Filter data where at least one STS transfer occurs, or none. - one of: `'disabled'`, `'inc'`, `'exc'`. Passing disabled means the filter is not active.
has_charterer: Filter data where at least one charterer is specified, or none. - one of: `'disabled'`, `'inc'`, `'exc'`. Passing disabled means the filter is not active.
intra_movements: Filter movements based on whether the vessel started and ended in the same country, or geographical layer.
voyage_date_range_activity: Filter to determine how the voyages should be counted. Must be one of [`active`, `departures`, `arrivals`]
origin_behaviour: The origin behaviour determines which departure mode the `voyage_date_range_activity` should count, must be one of [`first_load`, `any_load`].
destination_behaviour: The destination behaviour determines which arrival mode the voyage_date_range_activity should count, must be one of [last_discharge, any_discharge].
Returns
BreakdownResult
Example
Vessels breakdown by product and status between 1st of January 2024 - 29th of Fabuary 2024 with a "category" layer breakdown.
>>> from vortexasdk import VoyagesProductBreakdown
>>> from datetime import datetime
>>> search_result = VoyagesProductBreakdown(
... second_breakdown="status",
... ).search(
... time_min=datetime(2024, 1, 1),
... time_max=datetime(2024, 2, 29, 23, 59),
... breakdown_product="category",
... origins=["c4b606ff15bd9b86c37e4fbccf8b5f7e57890c6f675e7a250538e297b4c1303e"],
... ).to_df()
Gives the following result:
| | id | label | value | breakdown.0.id | breakdown.0.label | breakdown.0.value | breakdown.1.id | breakdown.1.label | breakdown.1.value |
|---:|:-----------------|:--------------------------------|--------:|:-----------------|:--------------------|:--------------------|:-----------------|:--------------------|:--------------------|
| 0 | 903edb3eea470524 | Chemicals | 23 | ballast | ballast | 1 | laden | laden | 22 |
| 1 | 9d52ede1cff0421a | Biodiesel Feedstock | 22 | ballast | ballast | 1 | laden | laden | 20 |
| 2 | 46c5395c665a4dc1 | Other Biodiesel/ Edible Oils | 5 | ballast | ballast | 1 | laden | laden | 4 |
| 3 | b2034f1ad3a4ac26 | Gasoil | 4 | ballast | ballast | 3 | laden | laden | 1 |
| 4 | 3c227f964d804a12 | ULSD (Ultra Low Sulphur Diesel) | 3 | ballast | ballast | 3 | laden | laden | |
| 5 | 1854369f995f26cb | Blending Components | 1 | ballast | ballast | | laden | laden | 1 |
| 6 | c76d43ed46524d62 | Finished Gasoline | 1 | ballast | ballast | | laden | laden | 1 |