API Documentation

Release 2.1

        Requests

            Method: POST
            URL:
                https://shipping-staging.langtec.de/<extraction type> (cargo, ship, q88, or timesheet)
                Default Type: https://shipping-staging.langtec.de/

            Authorization: Basic
                Username: <username>
                Password: <password>

                (Use your API key as a password if you were provided with one)

            Headers:
                Content-Type: multipart/form-data

            Body:
                file: <file1> (Set type as "File" and browse files to upload)
                file: <file2>
                ...

        Extracted Fields

            Cargo description/name,
            Load port UN Location Code,
            Load port name,
            Load port 2,
            Load port 3,
            Discharge port UN Location Code,
            Discharge port name,
            Discharge port 2,
            Discharge port 3,
            Number of metric tonnes,
            Number of cubic metres,
            Number of pieces,
            Number of freight tonnes,
            Heaviest Item,
            kg,
            foot,
            pound,
            Commission,
            Lay date,
            Cancellation date,
            Earliest Arrival,
            Transit Time,
            Latest Arrival,
            Last in / first out,
            Deck option,
            Stackability,
            Contact,
            Contact name,
            Contact email,
            Filename,
            Hash

        Example

            cURL:
                curl -X POST https://shipping-staging.langtec.de/ \
                -u username:password \
                -F file=@Email1.eml -F file=@Email2.eml

            python:
                import requests
                from requests.auth import HTTPBasicAuth

                file_paths = ['Email1.eml, Email2.eml']
                files = {'file': (file_path, open(file_path, 'rb')) for file_path in file_paths}
                auth = HTTPBasicAuth('username', 'password')

                response = requests.post('https://shipping-staging.langtec.de/',
                                         auth=auth,
                                         files=files,
                                         )
                print(response.content)

            (All submitted data will be encrypted and securely transferred to
            LangTec's server.)

            Response

                {
                    "Email1.eml": {
                        "Character Count": 8075,
                        "Enquiries": [
                            {
                                "Cancellation date": "2025-08-03",
                                "Cargo description/name": "BULK FERTS",
                                "Commission": 3.5,
                                "Contact": "Name <name@company.com>",
                                "Discharge port UN Location Code": "INKRI",
                                "Lay date": "2025-07-15",
                                "Load port UN Location Code": "CNZNG",
                                "Number of metric tonnes": 40000.0
                            }
                        ],
                        "Enquiries extracted": 1,
                        "Language": "en"
                    },
                    "Email2.eml": {
                        "Character Count": 7902,
                        "Enquiries": [
                            {
                                "Cargo description/name": "WRIC",
                                "Commission": 5.0,
                                "Contact": "Name <name@company.com>",
                                "Contact email": "<name@company.com>",
                                "Contact name": "Name",
                                "Discharge port UN Location Code": "TNSUS",
                                "Lay date": "MID OF MARCH",
                                "Load port UN Location Code": "GBHUL",
                                "Number of metric tonnes": 5000
                            }
                        ],
                        "Enquiries extracted": 1,
                        "Language": "en"
                    },
                    "Meta": {
                        "Copyright": "Copyright LangTec 2025",
                        "Email": "info@langtec.de",
                        "Notes": [],
                        "Request UUID": "8dfef0ab-9a31-4163-878b-d1a60cf22a04",
                        "Service Version": "2.1",
                        "Subscription Info": [
                            {
                                "completed uploads": 6,
                                "parsers": [
                                    "cargo"
                                ],
                                "remaining requests": "no limit"
                            }
                        ],
                        "Timestamp": "2025-01-01T00:00:00.000000",
                        "Website": "www.langtec.de"
                    }
                }