Industrial Shipping Container Number Scanner API

Build or upgrade your own shipping container number scanner without heavy hardware. Instantly extract ISO 6346 codes from any image upload. Drag and drop your image for a free live test.

A mobile device screen acting as a shipping container number scanner, capturing and parsing the container code EMCU 850473 0.

The Problem with Traditional Container Scanners

Deploying proprietary hardware-based shipping container number scanners across multiple lanes or mobile teams is prohibitively expensive and difficult to scale. Standard optical equipment frequently misreads codes due to intense solar glare, rust, or when text is rotated upside down on top-down crane angles. To achieve reliable automation without the hardware overhead, software teams need a flexible cloud alternative. For a deeper dive into overcoming these physical environmental hurdles, see our core Container OCR capabilities.

StructOCR: The Software Engine for Your Container Scanner

Engineered strictly as a high-performance REST API to eliminate heavy SDK dependencies, this endpoint serves as the cloud brain for any custom scanner application. It is powered by our developer-first Logistics Container OCR engine. It provides native 180-degree rotation invariance and automatically performs strict ISO 6346 validation on the owner code and check digit before delivering a clean JSON response directly to your database.

Live Demo: Container OCR

No registration required. Upload a file to test the extraction.

1
Upload
2
Results

Drop files here or click to browse

JPG · PNG · WebP  ·  up to 500 files · max 4.5 MB each

No files selected

Ready to use this in production? Get 20 free API calls — no credit card needed.

Get 20 Free API Calls →

Turn Any Device Into a Container Scanner

Handheld Mobile Scanning Apps

Equip yard inspectors with a smartphone-based scanner. By sending direct multipart file uploads or Base64 strings from the mobile camera, they can log container IDs instantly. Ready to build your scanner? View flexible pricing to find a plan that matches your daily scanning volume.

Fixed CCTV Gate Scanners

Retrofit existing gate security cameras into automated checkpoint scanners. The API handles fast-moving trucks and multi-lane sequential processing natively.

Reach Stacker & Forklift Cameras

Mount rugged cameras onto reach stackers to automatically scan container numbers during physical movement and stacking operations in real-time.

Drone-Based Inventory Audits

Stream aerial yard footage to the API to scan and map container positions across massive multi-tier stacking yards without manual data entry.

Technical Specs

  • Checksum Security: Built-in ISO 6346 check digit validation to eliminate human typing errors.
  • Edge Optimization: Deployed globally on Cloudflare's edge network, ensuring ultra-low t1/t2 network latency for mobile scanning apps in the field.
  • Angle Tolerance: Full rotation invariance handles slanted, tilted, or 180° upside-down text layout.
  • Input Flex: Native support for public image URLs, multipart form file uploads, and raw Base64-encoded strings.

Key Features

  • Instant Parsing: Isolates the ISO 4-letter prefix (BIC code) and the 7-digit numerical sequence instantly.
  • Corrugated Metal Filtering: Advanced computer vision isolates text from heavily weathered, rusted, or shadowed container ribs.
  • Zero SDK Overhead: Integration requires no native mobile dependencies, keeping your scanning app lightweight and fast to update.

Power Your Scanner Component

Integrate the scanning backend with a few lines of code. The endpoint supports raw Base64 payloads and direct file uploads, making it highly optimized for edge and mobile networks.

import requests
import base64

# Prepare Base64 Image from scanner camera snapshot
with open("scanner_snapshot.jpg", "rb") as image_file:
    base64_image = base64.b64encode(image_file.read()).decode('utf-8')

url = "https://api.structocr.com/v1/container"
headers = {
    "x-api-key": "YOUR_API_KEY",
    "Content-Type": "application/json"
}
payload = {
    "img": base64_image
}

try:
    print("Processing scanner payload...")
    response = requests.post(url, headers=headers, json=payload)
    result = response.json()

    if result.get('success'):
        data = result['data']['parsed']
        print("✅ Container Scanned Successfully!")
        print(f"Container ID: {data.get('owner_code')}{data.get('category')}{data.get('serial_number')}-{data.get('check_digit')}")
    else:
        print(f"❌ Scan Failed: {result.get('message')}")
except Exception as e:
    print(f"Error: {e}")

Structured Scanner Payload

Receive clean, actionable JSON data immediately to populate your yard management or logistics dashboard.

{
  "success": true,
  "data": {
    "container_number": "EMCU8504730",
    "is_valid": true,
    "confidence": "High",
    "parsed": {
      "owner_code": "EMC",
      "category": "U",
      "serial_number": "850473",
      "check_digit": "0"
    }
  }
}

Frequently Asked Questions

Can I perform a free test with my own container images?

Yes! Our platform provides a free image test where you can upload raw snapshots from your gate or mobile cameras and see the scanner API's extraction accuracy instantly.

Does the scanner API require high-bandwidth connections?

No. By sending compressed Base64 strings or direct file uploads, you minimize network payload size, allowing the scanner to function efficiently over cellular networks or remote yard Wi-Fi.

How does it handle distorted or unreadable check digits?

The API uses ISO 6346 validation mathematical logic. If a check digit is physically scratched, the engine cross-calculates the correct digit based on the prefix and serial number to verify the sequence.

Explore More Container Solutions

Precise Data Extraction and Seamless Integration with AI-powered OCR API.

Empower your solutions with automated data extraction by integrating best-in class StructOCR via API seamlessly.

No credit card required • Full API access included