Market API
European freight market macro indicators and indices.
GET /marketReturns real-time market macro indicators including the CERFI20 index, volatility, market volume, fuel prices, and supply/demand ratios across the European freight market.
Cost: 1 credit (€0.03 overage)
Permission required: market:read
Request
Headers
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer cb_live_xxxxxxxxxxxx |
No request body — this is a GET request.
Example Request
curl -X GET https://cargobloom.io/api/v1/market \
-H "Authorization: Bearer cb_live_xxxxxxxxxxxx"const response = await fetch('https://cargobloom.io/api/v1/market', {
method: 'GET',
headers: {
'Authorization': 'Bearer cb_live_xxxxxxxxxxxx',
},
});
const { success, data } = await response.json();import requests
response = requests.get(
'https://cargobloom.io/api/v1/market',
headers={'Authorization': 'Bearer cb_live_xxxxxxxxxxxx'}
)
data = response.json()Response
Full Response Example
{
"success": true,
"data": {
"timestamp": "2026-02-01T14:30:00Z",
"cerfi20": {
"value": 1.45,
"unit": "EUR/km",
"change_24h": 1.2,
"change_7d": -0.5,
"change_30d": 3.2,
"sparkline_7d": [1.42, 1.43, 1.44, 1.45, 1.45, 1.44, 1.45],
"components_count": 20
},
"volatility_index": {
"value": 35,
"scale": "0-100",
"level": "normal",
"change_24h": 2.1
},
"market_volume": {
"value_eur": 15000000,
"offer_count": 124500,
"change_24h": -2.3,
"change_7d": 5.1
},
"fuel_prices": {
"diesel_eur_per_liter": 1.45,
"gasoline_eur_per_liter": 1.62,
"diesel_change_7d": -1.2,
"gasoline_change_7d": -0.8,
"price_date": "2026-02-01"
},
"supply_demand": {
"ratio": 1.08,
"market_condition": "balanced",
"vehicle_count": 15234,
"freight_demand_count": 14102
}
},
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}Response Fields
Use Cases
Dashboard Display
Show key market indicators:
const { cerfi20, volatility_index, fuel_prices } = data;
console.log(`Market Rate Index: €${cerfi20.value}/km (${cerfi20.change_24h > 0 ? '+' : ''}${cerfi20.change_24h}%)`);
console.log(`Volatility: ${volatility_index.level}`);
console.log(`Diesel: €${fuel_prices.diesel_eur_per_liter}/L`);Market Alerts
Notify when conditions change:
const { volatility_index, supply_demand } = data;
if (volatility_index.level === 'high' || volatility_index.level === 'elevated') {
alert('Warning: High market volatility');
}
if (supply_demand.market_condition === 'supply_shortage') {
alert('Capacity tight - book early');
}Trend Visualization
Use sparkline data for charts:
const { cerfi20 } = data;
// Plot 7-day trend
const chartData = cerfi20.sparkline_7d.map((value, index) => ({
day: index + 1,
rate: value,
}));Caching Recommendations
The market data updates every 15 minutes. Recommended caching:
| Use Case | Cache Duration |
|---|---|
| Dashboard display | 5-15 minutes |
| Analytics/reporting | 15-60 minutes |
| Trend analysis | No cache (use snapshots) |
Related
- Basic Benchmark — Route-specific rates
- Detailed Benchmark — Route analysis with trends
Last updated: February 1, 2026