Create Logistics Requests (Bulk)
Create Logistics Requests (Bulk)
Process multiple logistics shipments in a single request with optimized performance
POST
Create Logistics Requests (Bulk)
Create Logistics Requests (Bulk)
Process multiple logistics requests in a single API call. Optimized for high-volume scenarios like daily batch uploads from logistics providers.New API: This endpoint is part of the new API architecture with improved design and maintainability.
Key Features
High Volume
Process up to 5,000 records per request
Optimized Performance
Internal caching of TOCs, hubs, and distances for faster processing
Error Handling
Continue processing even if some records fail with
continue_on_errorSame Schema
Uses the same record format as the single request endpoint
Request
Headers
Your API key for authenticationExample:
sk_live_1234567890abcdefYour organization UUIDExample:
a8315ef3-dd50-43f8-b7ce-d839e68d51faBody Parameters
Array of logistics request objects. Each record uses the same schema as the single Create Logistics Request endpoint.Maximum items: 5,000
Processing options for the bulk operation.
Response
Total number of records received in the request
Total records processed (success + failed)
Number of records processed successfully
Number of records that failed
Array of successfully processed records with essential fields
Array of errors for failed records
Example
Successful Response
Response with Partial Errors
Performance Optimizations
The bulk endpoint includes several optimizations for high-volume processing:TOC Caching
TOC Caching
All active vehicle types (TOCs) are pre-loaded at the start of the request, avoiding repeated database queries for each record.
Hub Caching
Hub Caching
Organization logistics hubs are pre-loaded, allowing instant name-to-address resolution without individual lookups.
Distance Caching
Distance Caching
Calculated distances are cached by route (origin, destination, category). Repeated routes reuse cached distances, reducing Google Maps API calls.Example: If 100 records share the same Madrid → Barcelona route, the distance is calculated only once.
Batch Database Operations
Batch Database Operations
Records are inserted in batches of 500 for efficient database writes.
Use Cases
Daily Batch Upload (Logistics Provider)
Process daily shipment data from a logistics provider:Multi-leg Package Tracking (Bulk)
Track packages through multiple legs in a single request:With Pre-calculated Distances
When you have pre-calculated distances (e.g., from your routing system), skip geocoding:Common Errors
422 Validation Error
Cause: Invalid record format or missing required fieldstoc or category, and either distance_km or both origin and destination.
Partial Failures
When some records fail butcontinue_on_error is true, the response includes both successful results and errors:
errors array to identify and fix problematic records, then resubmit only the failed ones.
Limits
| Limit | Value |
|---|---|
| Maximum records per request | 5,000 |
| Maximum concurrent requests | 6 per API key |
| Request timeout | 5 minutes |
| Recommended batch size | 1,000 - 2,000 |
| Recommended concurrency | 5 (one below the limit) |
429 with a Retry-After header.
Related Endpoints
Create Single Request
Create a single logistics request
Get Requests
Retrieve all logistics requests with pagination
Get Packages
Retrieve packages with aggregated emissions
Get TOCs
Get available vehicle types

