Data Platform
Global Freight Tracking API: Track 30+ Air & Sea Carriers — One Call, One Standard Response
One API call replaces 30+ carrier portal checks. Real-time AWB and container tracking from international air and sea carriers — standardised JSON response, including full audio CAPTCHA bypass.
Django
Docker
PostgreSQL
Python
30+
International Air & Sea Carriers Integrated
5
Scraping Methods (JSON, Gateway, Playwright, Selenium, CAPTCHA Bypass)
AI
Audio CAPTCHA Solved Automatically via AssemblyAI
The Problem
Every Freight Carrier Has Its Own Portal — Manual Tracking Across 30+ Is Unmanageable
Freight forwarding companies need to track shipments across dozens of airlines and shipping lines — each with a completely different tracking interface. Some carriers have clean JSON APIs. Others render tracking data with JavaScript after several redirects. Others are behind Cloudflare with reCAPTCHA or audio CAPTCHA challenges. A few use internal SOAP/XML formats. There was no single system that could query all of them and return standardised tracking data without human intervention.
Our Solution
A Five-Method Scraping Engine Covering Every Carrier Protection Level
We built the freight tracker as a Flask REST API with a dedicated scraper module per carrier, each using the right tool for that carrier's specific protection level.
Simple carriers are handled with direct aiohttp/requests JSON calls with browser-spoofing headers. The freight.aero gateway handles 15+ airlines via a single POST with the IATA carrier code — with 2captcha integration for reCAPTCHA-protected variants. Playwright with headless Firefox and Webshare rotating proxies handles JS-rendered pages (FedEx, Saudia Cargo), extracting multi-stage tracking event tables after waiting for Angular/React app rendering.
For CMA CGM — which combines JS rendering and audio CAPTCHA — we built a full automated bypass: Playwright detects the CAPTCHA iframe, clicks the audio challenge button, captures the MP3 audio URL, submits it to AssemblyAI's transcription API, polls for completion, extracts the digit string from the transcript, and types each digit into the CAPTCHA input. The entire flow completes without human involvement.
HMM sea freight required iframe navigation and extraction of six distinct data tables in a single session. Swiss World Cargo required Selenium Wire for proxy-level traffic interception to capture session tokens before making bid requests.
Architecture
Flask microservice API (threaded, port 5000). API key authentication. Playwright (headless Firefox) with Webshare rotating proxy pool. Selenium Wire + Undetected ChromeDriver for Cloudflare-protected carriers. aiohttp async HTTP scraping. BeautifulSoup + lxml XPath parsing. 2captcha API for reCAPTCHA v2/v3 solving. AssemblyAI audio CAPTCHA transcription bypass. scraping.narf.ai JS rendering proxy for Hapag-Lloyd. CrawlBase fallback scraper. Fake user agent rotation.
The Result
30+ Carriers, One API Call — Fully Automated Including Audio CAPTCHA Resolution
The Global Freight Tracking API gave the client a single integration point for all 30+ carrier tracking systems — replacing a manual process of logging into individual carrier portals with a single authenticated API call per shipment. Every carrier returns the same standardised JSON structure: carrier name, AWB prefix, shipment summary, and a timestamped tracking event array.
The audio CAPTCHA bypass via AssemblyAI eliminated the last manual bottleneck — CMA CGM's combined JS-rendering and audio CAPTCHA challenge, which previously required human intervention, is now solved fully automatically in every request. The freight.aero gateway expanded single-carrier coverage into 15+ airlines with one integration.
The standardised response format means the client's freight management system displays tracking events from any carrier in the same UI component. Adding new carriers requires only a new scraper module — no API contract changes, no client-side updates. Freight forwarders get a real-time, unified view of every shipment across every carrier from a single integration.
Want scalable architecture and measurable results like this?
Book an Architecture Audit
Build Something Like This
// free scoping call · senior engineers · no commitment
Project scope, timelines, and architecture options in one 45-minute session.
More Work