---
title: "Get container map GeoJSON"
method: GET
path: "/containers/{id}/map_geojson"
tags: ["Containers", "Routing (Paid)"]
---

# Get container map GeoJSON

`GET /containers/{id}/map_geojson`

Returns a GeoJSON FeatureCollection containing all map-related data for a container, including port locations, current vessel position (if at sea), past vessel paths, and estimated future routes. The response can be directly used with most mapping libraries (Leaflet, Mapbox GL, Google Maps, etc.). <Note>This is a paid feature. Please contact sales@terminal49.com.</Note>

## Response `200`

OK

- object
  - `type` 'FeatureCollection', required
  - `features` object[], required
    - `type` 'Feature', required
    - `geometry` union, required
      - object
        - `type` 'Point', required
        - `coordinates` number[], required
      - object
        - `type` 'LineString', required
        - `coordinates` array[], required
          - number[]
    - `properties` union, required
      - PortFeatureProperties
        - `feature_type` 'port', required
        - `ports_sequence` integer — The sequence number of this port in the route (1 = POL, last = POD)
        - `ports_total` integer — Total number of ports in the route
        - `location_id` string — Unique identifier for the port location
        - `location_type` 'Port'
        - `name` string — Name of the port
        - `state_abbr` string, nullable — State abbreviation (if applicable)
        - `state` string, nullable — State name (if applicable)
        - `country_code` string — ISO country code
        - `country` string — Country name
        - `time_zone` string — IANA timezone identifier
        - `label` string — Port label: POL, POD, or TS1, TS2, etc.
        - `inbound_eta_at` string, date-time, nullable — Estimated time of arrival (ISO 8601)
        - `inbound_ata_at` string, date-time, nullable — Actual time of arrival (ISO 8601)
        - `outbound_etd_at` string, date-time, nullable — Estimated time of departure (ISO 8601)
        - `outbound_atd_at` string, date-time, nullable — Actual time of departure (ISO 8601)
        - `updated_at` string, date-time, nullable — Last update timestamp from the shipment (ISO 8601)
      - CurrentVesselFeatureProperties
        - `feature_type` 'current_vessel', required
        - `ports_sequence` integer — Sequence number of the departure port for this leg
        - `vessel_id` string — Unique identifier for the vessel
        - `vessel_name` string — Name of the vessel
        - `vessel_imo` string — IMO number of the vessel
        - `voyage_number` string, nullable — Voyage number for this leg
        - `vessel_location_timestamp` string, date-time — Timestamp of the vessel position (ISO 8601)
        - `vessel_location_heading` number, nullable — Vessel heading in degrees (0-360)
        - `vessel_location_speed` number, nullable — Vessel speed in knots
        - `departure_port_id` string — ID of the port the vessel departed from
        - `departure_port_name` string — Name of the departure port
        - `departure_port_state_abbr` string, nullable — State abbreviation of departure port
        - `departure_port_state` string, nullable — State name of departure port
        - `departure_port_country_code` string — Country code of departure port
        - `departure_port_country` string — Country name of departure port
        - `departure_port_label` string — Label of departure port (POL, POD, TS1, etc.)
        - `departure_port_atd` string, date-time, nullable — Actual time of departure from the port (ISO 8601)
        - `departure_port_time_zone` string — Timezone of departure port
        - `arrival_port_id` string, nullable — ID of the next port the vessel is heading to
        - `arrival_port_name` string, nullable — Name of the arrival port
        - `arrival_port_state_abbr` string, nullable — State abbreviation of arrival port
        - `arrival_port_state` string, nullable — State name of arrival port
        - `arrival_port_country_code` string, nullable — Country code of arrival port
        - `arrival_port_country` string, nullable — Country name of arrival port
        - `arrival_port_label` string, nullable — Label of arrival port (POL, POD, TS1, etc.)
        - `arrival_port_eta` string, date-time, nullable — Estimated time of arrival at the next port (ISO 8601)
        - `arrival_port_time_zone` string, nullable — Timezone of arrival port
      - PastVesselLocationsFeatureProperties
        - `feature_type` 'past_vessel_locations', required
        - `ports_sequence` integer — Sequence number of the departure port for this leg
        - `vessel_id` string — Unique identifier for the vessel that traveled this path
        - `start_time` string, date-time — Start timestamp of the path (ISO 8601)
        - `end_time` string, date-time — End timestamp of the path (ISO 8601)
        - `point_count` integer — Number of coordinate points in the LineString
        - `outbound_atd_at` string, date-time, nullable — Actual time of departure from the origin port (ISO 8601)
        - `inbound_ata_at` string, date-time, nullable — Actual time of arrival at the destination port (ISO 8601)
        - `inbound_eta_at` string, date-time, nullable — Estimated time of arrival at the destination port (ISO 8601)
      - EstimatedFullLegFeatureProperties
        - `feature_type` 'estimated_full_legs', required
        - `ports_sequence` integer — Sequence number of the departure port for this leg
        - `previous_port_id` string — ID of the origin port
        - `next_port_id` string — ID of the destination port
        - `point_count` integer — Number of coordinate points in the LineString
      - EstimatedPartialLegFeatureProperties
        - `feature_type` 'estimated_partial_leg', required
        - `ports_sequence` integer — Sequence number of the departure port for this leg
        - `current_port_id` string — ID of the port the vessel departed from
        - `next_port_id` string — ID of the next port the vessel is heading to
        - `point_count` integer — Number of coordinate points in the LineString

## Other responses

- `403` — Forbidden - Routing data feature is not enabled for this account

---

[API](https://skmtc.net/terminal49/apis/terminal49-api-reference.md) · [All operations](https://skmtc.net/terminal49/apis/terminal49-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/terminal49/terminal49-api-reference/versions/05ac7931d5a1/schema)
