Spider TL API v3 Documentation

Version: v3.0

Download Postman Configuration: https://spider-tl.com/storage/file/download/v3_postman.zip

Basic Information

API Version v3
Domain https://spider-tl.com
Authentication Method Bearer Token
Token Variable Name {{variable_token}}

Interface List

Interface Name Method Purpose
/api/v3/shipment/rates POST Get Shipping Rate Quotes
/api/v3/shipment/checkout (Cross-border) POST Create International Shipping Order
/api/v3/shipments/checkout (Intra-EU) POST Create EU Domestic Shipping Order

1. Get Shipping Rates

Interface Information

Interface Name /api/v3/shipment/rates
Request Method POST
Purpose Query available carriers and costs based on sender/receiver addresses and parcel information

Request Example

{
    "senderAddress": {
        "countryCode": "FR",
        "postalCode": "93300"
    },
    "receiverAddress": {
        "countryCode": "GB",
        "postalCode": "RH4 1UT"
    },
    "parcels": [
        {
            "weight": 3
        }
    ]
}

Response Example

{
    "Response": {
        "Date": 1765451621,
        "Status": "SUCCEEDED",
        "Code": 200,
        "Message": {
            "transactionId": "20251211frdb384b5689d04d289335a5e38489d1ba",
            "shipmentRequest": {
                "senderAddress": {
                    "countryCode": "FR",
                    "postalCode": "93300"
                },
                "receiverAddress": {
                    "countryCode": "DK",
                    "postalCode": "9362"
                },
                "parcels": [
                    {
                        "weight": 12
                    },
                    {
                        "weight": 7.5
                    }
                ]
            },
            "carriers": [
                {
                    "id": "Z1FWeUljUnpFWlp3K3dBMVVVMklLb1pnb0tEa2VWeEo1MHNsbDZuNzVBRT0=",
                    "code": "fedex",
                    "name": "FedEx",
                    "price": 2107,
                    "priceIncTax": 2528,
                    "logo": "https://spider-tl.com/media/logo/sq/fedex.png",
                    "infos": {
                        "estimatedArrival": "3-4 day(s)",
                        "maximumSizeSupported": "Max 80*50*30cm, 25kg",
                        "storageLocation": "Spider TL, Fedex Dép 93"
                    }
                },
                // ... More carrier options
            ]
        }
    }
}

Response Field Description

Field Type Description
Response.Date Integer Response timestamp
Response.Status String Response status: "SUCCEEDED" indicates success
Response.Code Integer HTTP status code, 200 indicates success
Message.transactionId String Unique transaction ID for this quote request
Message.shipmentRequest Object Returned quote request parameters (for confirmation)
Message.carriers Array List of available carriers
carriers[].id String Carrier unique ID (used for subsequent order placement)
carriers[].code String Carrier code (e.g., fedex, ups, gls)
carriers[].name String Carrier display name
carriers[].price Integer Price excluding tax (unit: cent)
carriers[].priceIncTax Integer Price including tax (unit: cent)
carriers[].logo String Carrier logo image URL
carriers[].infos Object Additional carrier information (transit time, size limits, pickup points, etc.)

Weight Unit Specification

Field Type Unit Example Description
"weight": 3 Float [0-9](0,3) Kilogram (kg) 3 = 3 kg Parcel weight unit is kilogram
Within parcels array Array Kilogram {"weight": 8} = 8 kg All weight-related fields use kilograms

2. Create Shipping Order (Cross-border)

Interface Name /api/v3/shipment/checkout (Create International Shipping Order)
Request Method POST
Purpose Create an international shipping order, supports invoice attachment upload

Important Fields

Field Type Required Description
carrierId String Yes Carrier ID obtained from the rates interface response
invoice.file String Yes Base64 encoded string of the invoice file
invoice.fileFormat String Yes Invoice format (e.g., pdf)
invoice.invoiceItems Array Yes Product details (including HS code, country of origin, unit price, etc.)

3. Create Shipping Order (Intra-EU)

Interface Name /api/v3/shipments/checkout
Request Method POST
Purpose Create an EU domestic shipping order, invoice information not required

Request Example

{
    "transactionId": "...",
    "carrierId": "...",
    "shipmentRequest": {
        "parcels": [...],
        "senderAddress": {...},
        "receiverAddress": {...}
    }
}

Response Example

{
    "Response": {
        "Date": 1765452070,
        "Status": "SUCCEEDED",
        "Code": 200,
        "Message": {
            "transactionId": "20251211fr0e3e9578265d4600123bbbdf11caa3a0",
            "labels": "https://spider-tl.com/storage/file/pdf/2025_12_11/e8b1c813e762a2e2ed4fea3f45e4f1df.pdf",
            "parcels": [
                {
                    "ticket": "https://spider-tl.com/storage/file/pdf/2025_12_11/96ab5f48f26989030fd46fd3b44cbf2b.pdf",
                    "tracking": "886964616833"
                }
            ]
        }
    }
}

Response Field Description

Field Type Description
Response.Date Integer Response timestamp
Response.Status String Response status: "SUCCEEDED" indicates success
Response.Code Integer HTTP status code, 200 indicates success
Message.transactionId String Unique transaction ID for the order
Message.labels String Download URL for the shipping label PDF (combined for all parcels)
Message.parcels Array Detailed information for each parcel
parcels[].ticket String Shipping label PDF URL for individual parcel
parcels[].tracking String Parcel tracking number

Field Description

Field Type Description
transactionId String (Length: 42) Order unique identifier, recommended to be generated by the business system
carrierId String Carrier ID, obtained from the /rates interface
parcels Array Parcel list, includes weight, reference number, etc.
senderAddress Object Sender address information
receiverAddress Object Receiver address information
invoice Object Invoice information (required for cross-border shipping)

Address Structure (senderAddress / receiverAddress)

Field Type / Length Example Description
firstName String / 25 "TestFirstName" First name
lastName String / 25 "TestLastName" Last name
company String / 35 "TestCompany" Company name
siret String / 20 "82339490300038" French company registration number
shopName String / 35 "TestShopName" Shop name
email String / 35 "test@123.com" Email address
phoneNumber / mobileNumber String / 15 "0600000000" Phone/Mobile number
street String / 35 "8 Rue de la Haie Coq" Street address
city String / 35 "Aubervilliers" City
postalCode String / 10 "93300" Postal code
countryCode String / 2 "FR" Country code (ISO 3166-1 alpha-2)
instructions String / 35 "TestInstruction" Delivery notes

Configuration & Authentication

1
Get Postman Configuration File:

Download and import this Postman collection file, which includes all API request templates and pre-configuration

2
Set Environment Variables in Postman:
host = https://spider-tl.com
variable_token = Your Bearer Token
3
All requests must include in the Header:
Authorization: Bearer {{variable_token}}
Quick Start Steps:
  1. Download Postman configuration file
  2. Import into Postman (File → Import)
  3. Set environment variables (host and variable_token)
  4. Start testing API interfaces

Business Process Recommendation

1
Call /rates to get available carriers and quotes

Query shipping costs based on sender/receiver addresses and parcel information

2
After user selects carrier, obtain its carrierId

Extract from the /rates interface response

3
Call /checkout to create shipping order

• Cross-border shipping requires invoice (Base64 encoded)
• Intra-EU shipping does not require invoice

4
Obtain shipping labels and tracking numbers

Get from the /checkout interface response:
labels - Shipping label PDF download link
parcels[].tracking - Parcel tracking number