Skip to content

Security Notice

This document has been auto-published from the internal knowledge base. All passwords, API keys, tokens, and IP addresses have been redacted for security.

Carrier APIs & Tracking — Domain Specialist

Carrier Status Matrix

CarrierSCACContainer PrefixMethodStatusNotes
ONE (Ocean Network Express)ONEYONEU, TCLU, TCNU, TRIUAPIVerifiedReliable, fast
MSCMSCUMSCU, MEDU, MSDUAPI / ScrapeVerifiedSession handling needed
Yang MingYMLUYMLU, YMMUAPIVerifiedStable
EvergreenEGLVEISU, EGHU, EMCUAPIVerifiedStable
HMM (Hyundai)HDMUHDMU, HMMUAPIVerifiedStable
CMA-CGMCMDUCMAU, CGMUSeaRates + fallbackVerifiedSeaRates.com primary, headless browser
MaerskMAEUMAEU, MRKU, MSKUNeeds workAPI available but not integrated
COSCOCOSUCCLU, COSU, CSNUNeeds workComplex auth
OOCLOOLUOOLUBlockedAnti-bot (Akamai)
Wan HaiWHLCWHLUBlockedAnti-bot
ZIMZIMUZIMUBlockedCloudflare challenge

Container Prefix → Carrier Lookup

MSCU/MEDU/MSDU → MSC
CMAU/CGMU → CMA-CGM
ONEU/TCLU/TCNU/TRIU → ONE
EISU/EGHU/EMCU → Evergreen
YMLU/YMMU → Yang Ming
HDMU/HMMU → HMM
OOLU → OOCL
MAEU/MRKU/MSKU → Maersk
CCLU/COSU/CSNU → COSCO
WHLU → Wan Hai
ZIMU → ZIM

Ocean Tracker — Unified Orchestrator

  • n8n Workflow: AzACxa8tKeisIYss (ACTIVE, 19 nodes)
  • Webhook: POST /ocean-track
  • Input: { "tracking_number": "...", "carrier": "auto|msc|one|..." }
  • Auto-detect: Identifies carrier from container prefix or BL format
  • Output: Normalized JSON with vessel, voyage, ETD, ETA, port, status, events

Architecture

Webhook → Detect Carrier → Route to Sub-Tracker → Normalize Response → Return JSON

Sub-trackers are individual n8n workflows per carrier, called via HTTP.


Per-Carrier Details

ONE (Ocean Network Express)

  • Method: Direct API
  • Endpoint: Public tracking API
  • Input: BL number or container number
  • Rate limits: Moderate, no auth required
  • Response: JSON with full event history

MSC (Mediterranean Shipping Company)

  • Method: Track API with session management
  • Key challenges:
    • Requires session/cookie handling
    • Rate limiting on rapid requests
    • Response format varies by endpoint version
  • n8n pattern: HTTP Request → parse cookies → follow-up request with session

CMA-CGM

  • Primary: SeaRates.com (aggregator, covers CMA-CGM)
  • Fallback: CMA-CGM direct via headless browser
  • Standalone tool: ~/AI Projects/cma-tracker/
    • Stack: Python + DrissionPage + SeaRates.com
    • Run: python cma_tracker.py TWN1012993
    • Batch: --file shipments.txt --export excel (up to 20)
    • Modes: --headless (default) or --visible
  • n8n integration: Headless browser /track/cma route + workflow vuM2hK1ptcl53bvq

Evergreen / Yang Ming / HMM

  • Method: Direct API calls
  • Status: Verified, stable
  • No special handling needed

Maersk

  • API available: Maersk has a public API program (developer.maersk.com)
  • Not integrated yet — needs API key registration
  • Covers: Maersk + Hamburg Süd + Sealand brands

COSCO

  • Complex auth: Multi-step login required
  • Not integrated yet
  • Potential: API exists but requires partnership/key

Blocked Carriers (Anti-Bot)

CarrierProtectionApproach for Hamid
OOCLAkamai Bot ManagerNeed browser fingerprint rotation, residential proxies
Wan HaiAnti-bot (unidentified)Need analysis of protection type
ZIMCloudflareNeed Cloudflare bypass (FlareSolverr or similar)

Headless Browser Service

  • Internal URL: http://headless-browser:3000 (Docker root_default network)
  • VPS: srv1139900
  • 11 routes available for scraping tasks

Key Routes

RouteCarrierMethod
/track/cmaCMA-CGMSeaRates.com via headless Chrome
/track/mscMSCMSC website scrape
OthersVariousPer carrier as needed

Docker Config

  • Container: headless-browser on root_default network
  • Accessible from n8n and other containers on same network
  • Not exposed to internet (internal only)

BL Number Formats (Detection Hints)

PatternLikely Carrier
MEDU, MSCU prefixMSC
CMAU, CGMU prefixCMA-CGM
ONEY + digitsONE
EISU, EGHU prefixEvergreen
YMLU prefixYang Ming
HDMU prefixHMM
3 alpha + 7 digits + checkStandard container number (any carrier)
MEDUG... or MSCUG...MSC BL (not container)

CHAROS Trucking — Batch Tracker

  • n8n Batch: fCVbPtxhdMcroH4P (ACTIVE)
  • n8n Email Report: ry7zDIJTBXzV1dez (ACTIVE, Gmail OAuth2)
  • Webhooks: /charos-batch-track, /charos-email-report
  • Uses Ocean Tracker internally for carrier lookups

HandyManny Tracking Integration

  • Track Public API: POST /api/track-public — public CORS *
  • Flow: Client → HandyManny API → n8n Ocean Tracker → geocode ports → generate route waypoints → return enriched JSON
  • Tracking Maps: tracking-map.html on CHAROS/U1ST/WSI domains
    • "+" button opens modal to add tracking
    • LIVE badge on active shipments
    • localStorage persistence
    • Delete button per shipment

Hamid (Scraping Specialist) — Developer Brief

  • Role: Anti-bot specialist for blocked carriers (OOCL, Wan Hai, ZIM)
  • Status: STARTING
  • Access needed: Headless browser service, VPS SSH, n8n access
  • Goal: Crack anti-bot protection for 3 blocked carriers
  • Deliverable: Working n8n sub-tracker workflow per carrier

HandyManny Documentation System