Build powerful logistics applications with our REST API. Integrate shipping, tracking, and fulfillment directly into your e-commerce platform, ERP, or custom applications.
Get your API keys and learn about authentication
Real-time package tracking and status updates
Create shipments, get quotes, schedule pickups
Receive real-time event notifications
All API requests require authentication using Bearer tokens. Generate your API keys from the Developer Dashboard.
curl -X GET \
"https://api.velocityultra.co.za/v2/shipments" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
Sign up for a developer account and generate your keys:
| Endpoint | Method | Description |
|---|---|---|
/v2/auth/register |
POST | Register for developer access |
/v2/auth/login |
POST | Authenticate and get token |
/v2/auth/keys |
GET | List your API keys |
/v2/auth/keys/create |
POST | Create new API key |
Track shipments in real-time with our comprehensive tracking API. Get location updates, status changes, and estimated delivery times.
const trackShipment = async (trackingNumber) => {
const response = await fetch(
`https://api.velocityultra.co.za/v2/track/${trackingNumber}`,
{
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
}
}
);
const data = await response.json();
return data;
};
| Endpoint | Method | Description |
|---|---|---|
/v2/track/{tracking_number} |
GET | Get tracking details for a shipment |
/v2/track/batch |
POST | Track multiple shipments in one request |
/v2/track/events |
GET | Get recent tracking events |
/v2/track/live/{tracking_number} |
GET | WebSocket for real-time updates |
Create shipments, get real-time quotes, schedule pickups, and manage your logistics programmatically.
import requests
# Create a shipment
url = "https://api.velocityultra.co.za/v2/shipments"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
data = {
"service": "express_ultra",
"pickup": {
"name": "John Doe",
"address": "123 Main St, Johannesburg",
"phone": "+27111234567"
},
"delivery": {
"name": "Jane Smith",
"address": "456 Oak Ave, Cape Town",
"phone": "+27111234568"
},
"package": {
"weight": 2.5,
"dimensions": "30x20x10",
"description": "Important documents"
}
}
response = requests.post(url, json=data, headers=headers)
shipment = response.json()
Receive real-time notifications about shipment events. Configure webhooks to integrate with your systems.
const express = require('express');
const app = express();
app.post('/webhooks/shipment', async (req, res) => {
const event = req.body;
// Verify webhook signature
const signature = req.headers['velocity-signature'];
const isValid = verifySignature(signature, event);
if (!isValid) {
return res.status(400).send('Invalid signature');
}
// Handle different event types
switch (event.type) {
case 'shipment.created':
console.log('New shipment:', event.data);
break;
case 'shipment.delivered':
console.log('Shipment delivered:', event.data);
break;
case 'tracking.updated':
console.log('Tracking update:', event.data);
break;
}
res.status(200).send('OK');
});
API rate limits ensure fair usage and system stability. All limits are per API key.
| Plan | Requests/Minute | Requests/Day | Webhooks |
|---|---|---|---|
| Developer | 60 | 5,000 | 5 endpoints |
| Startup | 300 | 50,000 | 20 endpoints |
| Business | 1,000 | 200,000 | 100 endpoints |
| Enterprise | 10,000+ | Unlimited | Unlimited |
Get started quickly with our officially supported SDKs for popular programming languages.
A comprehensive Python client for the Velocity Ultra API with async support and type hints.
Node.js and browser-compatible SDK with Promise-based API and TypeScript definitions.
Enterprise-grade Java client with Spring Boot integration and comprehensive error handling.
Our developer support team is here to help you integrate successfully.
Complete API reference with examples
Join our developer community forum
Schedule a 1:1 integration session