- Local:
http://localhost:8000 - Railway:
web-production-ac9db.up.railway.app
Most list endpoints support:
skip- Number of records to skip (pagination)limit- Maximum number of records to return- Entity-specific filters (see below)
active- Currently operationalmaintenance- Under maintenanceretired- No longer in service
scheduled- Not yet startedin_progress- Currently activecompleted- Finishedcancelled- Cancelled
pending- Not yet picked upin_transit- On the waydelivered- Successfully deliveredfailed- Delivery failed
standard- Normal priorityexpress- Higher priorityurgent- Highest priority
active- Currently workinginactive- Not currently workingon_leave- On leave
minor- Small issuemoderate- Medium severitymajor- Serious issuecritical- Critical incident
GET /deliveries/?status=in_transit&limit=50
GET /deliveries/?priority=urgent
GET /deliveries/?route_id=1
GET /deliveries/tracking/TRK123456789
GET /vehicles/?status=active
GET /vehicles/?vehicle_type=semi_truck
GET /vehicles/?organization_id=1
GET /routes/?driver_id=5&status=completed
GET /maintenance/?vehicle_id=10&maintenance_type=repair
GET /fuel/?vehicle_id=15
GET /fuel/?fuel_type=diesel
GET /gps/vehicle/20/latest
GET /gps/?vehicle_id=20&limit=100
GET /incidents/?driver_id=8
GET /incidents/?severity=major&resolved=false
GET /locations/?type=warehouse
GET /locations/?city=Los Angeles&state=CA
POST /deliveries/
{
"route_id": 1,
"location_id": 10,
"tracking_number": "TRK999999999",
"customer_name": "John Doe",
"customer_email": "john@example.com",
"customer_phone": "555-0123",
"package_count": 5,
"weight_kg": 25.5,
"status": "pending",
"priority": "standard",
"scheduled_delivery": "2024-12-25T10:00:00",
"signature_required": true
}- Get all active vehicles:
GET /vehicles/?status=active - For each vehicle, get recent routes:
GET /routes/?vehicle_id={id}&status=completed - Calculate metrics from the data
- Get driver details:
GET /drivers/{driver_id} - Get all completed routes:
GET /routes/?driver_id={id}&status=completed - Check for incidents:
GET /incidents/?driver_id={id} - Calculate on-time delivery rate
- Get all vehicles:
GET /vehicles/ - For each vehicle, get maintenance records:
GET /maintenance/?vehicle_id={id} - Aggregate costs and downtime
- Search by tracking number:
GET /deliveries/tracking/{tracking_number} - Get route details:
GET /routes/{route_id} - Get vehicle location:
GET /gps/vehicle/{vehicle_id}/latest - Estimate arrival time based on distance and speed
1. GET /vehicles/?status=maintenance
2. GET /maintenance/?vehicle_id={id}
3. Analyze downtime and costs
1. GET /deliveries/?priority=urgent&status=in_transit
2. For each delivery, GET /routes/{route_id}
3. GET /gps/vehicle/{vehicle_id}/latest
4. Calculate ETA
1. GET /incidents/?resolved=false
2. GET /drivers/{driver_id} for each incident
3. Generate report of unresolved incidents
1. GET /vehicles/
2. For each vehicle, GET /fuel/?vehicle_id={id}
3. Calculate average fuel consumption
4. Identify least efficient vehicles
1. GET /routes/?status=completed
2. Analyze distance vs actual time
3. GET /incidents/?incident_type=delay
4. Identify routes with frequent delays
All responses follow this pattern:
Single Resource:
{
"id": 1,
"field1": "value1",
"field2": "value2",
"created_at": "2024-01-01T00:00:00"
}List of Resources:
[
{
"id": 1,
"field1": "value1"
},
{
"id": 2,
"field1": "value2"
}
]Error Response:
{
"detail": "Error message here"
}Currently no rate limiting is implemented. This is a development/testing API.
Currently no authentication is required. This is a development/testing API.
-
Use Environment Variables
- Create a Postman environment
- Set
base_urlvariable to your API URL - Use
{{base_url}}in requests
-
Create Test Scripts
- Verify status codes
- Check response structure
- Extract IDs for chained requests
-
Use Collection Variables
- Store IDs from responses
- Use in subsequent requests
- Example:
pm.collectionVariables.set("vehicle_id", responseData.id)
-
Organize by Entity
- Create folders for each entity type
- Add common queries to each folder
- Use descriptive names
-
Pre-request Scripts
- Generate random data for POST requests
- Set up authentication tokens (when added)
- Validate data before sending