Documentación API de Schenker UAB
Referencia completa de la API para la integración de envíos con Schenker UAB. Accede a reservas, tarifas de carga, generación de etiquetas y seguimiento a través de la API unificada de gestión de transporte de Cargoson.
Obtén tu Clave APIDescripción General de la API de Schenker UAB
Esta API proporciona acceso programático a los servicios de envío de Schenker UAB a través de la plataforma unificada de gestión de transporte de Cargoson. Integra las capacidades de Schenker UAB incluyendo reservas de envíos, seguimiento, presupuestos de tarifas y generación de etiquetas en tus aplicaciones.
Capacidades de la API
- Crear y gestionar reservas de envíos con Schenker UAB
- Seguimiento de envíos y actualizaciones de estado
- Obtener presupuestos de tarifas de carga y tiempos de tránsito
- Generar etiquetas de envío en múltiples formatos (PDF, PNG, ZPL)
- Crear etiquetas de devolución para logística inversa
- Consultar ubicaciones de taquillas de paquetería y puntos de recogida
- Listar servicios disponibles del transportista
- Solicitudes automáticas de recogida por mensajero
URL Base y Autenticación
URL Base
https://www.cargoson.com/api/v1
Autenticación
Todas las solicitudes deben incluir tu clave API y el encabezado Accept correcto:
Authorization: Bearer TU_CLAVE_API
Accept: application/vnd.api.v1
API de Reservas de Schenker UAB
API Directa del TransportistaCrea envíos con Schenker UAB y obtén etiquetas de envío utilizando el endpoint Queries. Las reservas se envían al sistema del transportista en tiempo real y las etiquetas se generan inmediatamente.
Consulta vs Reserva Directa
El endpoint Queries admite dos métodos de reserva:
- Modo consulta - Crea una solicitud de transporte sin especificar un transportista (todavía). Esto te permite comparar manualmente precios y tiempos de entrega de transportistas, solicitar nuevos precios spot, realizar ajustes/actualizaciones al envío y delegar la selección del transportista a otros, antes de hacer la selección final del transportista en Cargoson.
- Reserva directa - Especifica un ID de servicio del transportista (de la API de Tarifas o Servicios) para reservar directamente con Schenker UAB. Esto asegura que tu envío utilice el servicio exacto que seleccionaste.
Para reservar directamente con Schenker UAB, siempre define el direct_booking_service_id.
/queries
Crear una consulta de envío o reserva directa para Schenker UAB. Incluye direct_booking_service_id para crear una reserva inmediata.
Request Parameters
collection_date
string
required
Fecha de recogida en formato AAAA-MM-DD
collection_country
string
required
Código de país de recogida (ISO 3166-1 alpha-2)
collection_postcode
string
required
Código postal de recogida
collection_address_row_1
string
required
Dirección de calle de recogida
collection_city
string
required
Ciudad de recogida
collection_company_name
string
required
Nombre de la empresa remitente
collection_contact_name
string
required
Persona de contacto del remitente
collection_contact_phone
string
required
Número de teléfono del remitente
delivery_country
string
required
Código de país de entrega
delivery_postcode
string
required
Código postal de entrega
delivery_address_row_1
string
required
Dirección de calle de entrega
delivery_city
string
required
Ciudad de entrega
delivery_company_name
string
required
Nombre de la empresa destinataria
delivery_contact_name
string
required
Persona de contacto del destinatario
delivery_contact_phone
string
required
Número de teléfono del destinatario
rows_attributes
array
required
Array de paquetes/palés con cantidad, tipo de paquete, peso y descripción
options[direct_booking_service_id]
integer
ID de servicio de Schenker UAB para reserva directa
Example: Direct Booking Request
{
"collection_date": "2026-02-15",
"collection_country": "DE",
"collection_postcode": "10115",
"collection_address_row_1": "Hauptstraße 123",
"collection_city": "Berlin",
"collection_company_name": "Demo GmbH",
"collection_contact_name": "Max Mustermann",
"collection_contact_phone": "+4930123456",
"delivery_country": "SE",
"delivery_postcode": "11122",
"delivery_address_row_1": "Drottninggatan 45",
"delivery_city": "Stockholm",
"delivery_company_name": "Demo Sweden AB",
"delivery_contact_name": "Erik Andersson",
"delivery_contact_phone": "+46812345678",
"rows_attributes": [
{
"quantity": 1,
"package_type": "EUR",
"weight": 100.0,
"description": "Goods on EUR pallet"
}
],
"options": {
"direct_booking_service_id": 1234
}
}
Example Response
{
"id": 12345,
"reference": "CG12345",
"status": "booked",
"latest_status": "confirmed",
"tracking_reference": "ABC1234567890",
"tracking_url": "https://tracking.carrier.com/ABC1234567890",
"label_url": "https://www.cargoson.com/labels/abc123.pdf",
"confirmed_at": "2026-02-15T10:30:00Z"
}
Generación de Etiquetas
Las etiquetas de envío de Schenker UAB se generan automáticamente cuando creas una reserva. Las etiquetas están disponibles en múltiples formatos para admitir diferentes tipos de impresoras.
Formatos de Etiqueta Soportados
a4 - Formato PDF A4 para impresoras de escritorio (4 etiquetas por página)label_printer - Formato PDF de 4x6in (~10x15cm) para impresoras térmicas
Las etiquetas se incluyen en la respuesta de la reserva a través del campo label_url. Descarga e imprime la etiqueta desde la URL proporcionada después de la reserva.
API de Tarifas de Schenker UAB (Precios de Carga)
Motor de CargosonSchenker UAB no proporciona una API de tarifas nativa. El motor de tarifas de carga de Cargoson calcula precios utilizando tus acuerdos de precios cargados, proporcionándote la misma experiencia API que los transportistas con APIs de tarifas nativas. Puedes cargar tarifas de transportistas en cualquier formato (Excel, PDF, incluso listas de precios escritas a mano) y las digitalizaremos.
Obtén tarifas de carga de Schenker UAB en tiempo real antes de reservar. La API de Tarifas devuelve servicios disponibles, precios y tiempos de entrega estimados.
/freightPrices/list
Obtener presupuestos de tarifas de carga de Schenker UAB y otros transportistas activados en tu cuenta.
Request Parameters
collection_date
string
required
Fecha de recogida en formato AAAA-MM-DD
collection_country
string
required
Código de país de recogida (ISO 3166-1 alpha-2)
collection_postcode
string
required
Código postal de recogida
delivery_country
string
required
Código de país de entrega
delivery_postcode
string
required
Código postal de entrega
rows_attributes
array
required
Array de paquetes/palés con cantidad, tipo de paquete, peso y descripción
Example Request
{
"collection_date": "2026-02-15",
"collection_postcode": "10115",
"collection_country": "DE",
"collection_with_tail_lift": true,
"collection_prenotification": true,
"delivery_postcode": "11122",
"delivery_country": "SE",
"delivery_with_tail_lift": true,
"delivery_prenotification": true,
"delivery_return_document": true,
"delivery_to_private_person": true,
"frigo": true,
"adr": false,
"rows_attributes": [
{
"quantity": 1,
"package_type": "EUR",
"weight": 100.0,
"description": "Goods on EUR pallet"
},
{
"quantity": 2,
"package_type": "FIN",
"weight": 300.0,
"description": "Goods on two FIN pallets"
}
],
"request_external_partners": false
}
Example Response
{
"status": 200,
"object": {
"prices": [
{
"carrier": "Schenker UAB",
"reg_no": "111552645",
"id": 1273,
"service": "Main",
"service_id": 85,
"price": "19.13",
"unit": "payable_weight",
"type": "price_list"
},
{
"carrier": "Schenker UAB",
"reg_no": "111552645",
"id": 1273,
"service": "Express Service",
"service_id": 123,
"price": "32.50",
"unit": "real_weight",
"type": "online"
},
{
"carrier": "Demo Logistics GmbH",
"reg_no": "87654321",
"id": 456,
"service": "Main",
"service_id": 555,
"price": "20.00",
"unit": "payable_weight",
"type": "price_list"
}
]
}
}
API de Seguimiento de Schenker UAB
API Directa del TransportistaRastrea envíos de Schenker UAB utilizando el número de referencia de Cargoson. Obtén el estado actual, actualizaciones de ubicación y tiempo estimado de entrega.
/bookings/{reference}
Recuperar detalles de seguimiento de un envío de Schenker UAB utilizando la referencia de reserva de Cargoson.
Example Response
{
"reference": "CG12345",
"status": "in_transit",
"latest_status": "collected",
"tracking_reference": "ABC1234567890",
"tracking_url": "https://tracking.carrier.com/ABC1234567890",
"confirmed_at": "2026-02-15T10:30:00Z",
"collected_at": "2026-02-15T14:20:00Z",
"estimated_delivery": "2026-02-18T16:00:00Z"
}
API de Etiquetas de Devolución de Schenker UAB
Impulsado por CargosonSchenker UAB no admite de forma nativa etiquetas de devolución. Cargoson genera etiquetas de devolución y gestiona el proceso de logística de devolución a través de nuestra plataforma.
Genera etiquetas de envío de devolución para envíos de Schenker UAB. Las etiquetas de devolución permiten a los clientes devolver artículos utilizando envío prepagado.
/bookings/{reference}/return_labels
Crear una etiqueta de devolución para un envío existente de Schenker UAB.
Request Parameters
label_format
string
Formato de etiqueta: a4 o label_printer (predeterminado: a4)
Example Request
{
"label_format": "a4"
}
Example Response
{
"return_label_url": "https://www.cargoson.com/labels/return_abc123.pdf",
"tracking_reference": "RETURN9876543210",
"tracking_url": "https://tracking.carrier.com/RETURN9876543210"
}
Características de Etiquetas de Devolución
- Etiquetas de envío de devolución prepagadas
- Las mismas opciones de formato que las etiquetas de salida (A4, térmica)
- Referencia de seguimiento separada para devoluciones
- Integración perfecta con los servicios de devolución de Schenker UAB
Solicitudes de Mensajero de Schenker UAB
Automatización de CargosonCargoson automatiza las solicitudes de recogida por mensajero para envíos de Schenker UAB, lo que hace que sea una tarea menos en la que pensar.
Cómo Maneja Cargoson las Solicitudes de Mensajero
Muchos transportistas requieren que crees etiquetas por separado y luego solicites manualmente la recogida por mensajero. Otros no tienen un sistema separado de etiqueta más llamada de mensajero, y cada envío es un envío completo y separado. Creemos que debería haber un estándar único de APIs de transportistas, pero actualmente, cada transportista crea su propio sistema único, lo que dificulta que sus usuarios recuerden las peculiaridades y complejidades de cada uno. Cargoson simplifica tus llamadas de mensajero tratando cada envío de manera integral: las solicitudes de mensajero se gestionan automáticamente como parte del proceso de reserva.
Optimización Inteligente de Recogidas
Cargoson optimiza las llamadas de mensajero para reducir costos y mejorar la eficiencia.
- 1. Consolidación por lotes - Múltiples envíos desde la misma ubicación se agrupan en una única solicitud de recogida
- 2. Manejo específico del transportista - Algunos transportistas incluyen la recogida en la reserva, otros requieren solicitudes separadas. Cargoson maneja ambas variantes automáticamente para ti
- 3. Horarios de recogida regulares - Configura recogidas preprogramadas en intervalos específicos (ej., diariamente en mi almacén principal a las 3 PM) y Cargoson omitirá por completo las llamadas de mensajero individuales
Beneficios
- No es necesario rastrear qué transportistas requieren solicitudes de mensajero separadas
- La optimización automática previene llamadas de recogida innecesarias
- Soporte para horarios de recogida regulares
- Flujo de trabajo de envío simplificado - solo crea la reserva
Configuración
La automatización de recogida por mensajero está habilitada por defecto para todos los envíos de Schenker UAB. Para configurar horarios de recogida regulares o reglas de optimización de recogida personalizadas, contacta a [email protected].
API de Servicios de Schenker UAB
Motor de CargosonLa API de Servicios es una característica proporcionada por Cargoson que devuelve una lista unificada de todos los servicios disponibles de Schenker UAB y otros transportistas en tu red. Esto te permite mostrar dinámicamente opciones de envío a tus clientes sin codificar IDs de servicio.
Obtén una lista de servicios de envío disponibles de Schenker UAB. Utiliza los IDs de servicio al realizar reservas directas para asegurarte de obtener el servicio exacto que deseas.
/services/list
Devolver lista de servicios de Schenker UAB disponibles en tu cuenta de empresa.
Example Response
{
"services": [
{
"carrier": {
"id": 1273,
"name": "Schenker UAB",
"short_name": "Schenker UAB",
"reg_no": "111552645"
},
"id": 85,
"name": "Main",
"service_type": "road_freight"
},
{
"carrier": {
"id": 1273,
"name": "Schenker UAB",
"short_name": "Schenker UAB",
"reg_no": "111552645"
},
"id": 123,
"name": "Express Service",
"service_type": "express"
}
]
}
Uso de IDs de Servicio
Los IDs de servicio de este endpoint se pueden utilizar con el parámetro direct_booking_service_id al crear reservas para seleccionar el servicio correcto y enviar el envío al sistema de Schenker UAB.
Ejemplos de Código Completos
A continuación se muestran ejemplos completos y funcionales que muestran el flujo de trabajo completo: obtener tarifas, seleccionar un servicio, reservar envío y extraer información de seguimiento.
# Define the service ID you want to use
CARRIER_SERVICE_ID=85
# Step 1: Get freight prices for Schenker UAB
curl -X POST https://www.cargoson.com/api/v1/freightPrices/list \
-H "Content-Type: application/json" \
-H "Accept: application/vnd.api.v1" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"collection_date": "2026-02-15",
"collection_country": "DE",
"collection_postcode": "10115",
"delivery_country": "SE",
"delivery_postcode": "11122",
"rows_attributes": [{
"quantity": 1,
"package_type": "EUR",
"weight": 100.0,
"description": "Goods on EUR pallet"
}]
}'
# Extract the price for your service from response:
# transport_price=$(echo "$response" | jq '.object.prices[] | select(.service_id==85) | .price')
# Step 2: Book shipment using the service_id
curl -X POST https://www.cargoson.com/api/v1/queries \
-H "Content-Type: application/json" \
-H "Accept: application/vnd.api.v1" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"collection_date": "2026-02-15",
"collection_country": "DE",
"collection_postcode": "10115",
"collection_address_row_1": "Hauptstraße 123",
"collection_city": "Berlin",
"collection_company_name": "Demo GmbH",
"collection_contact_name": "Max Mustermann",
"collection_contact_phone": "+4930123456",
"delivery_country": "SE",
"delivery_postcode": "11122",
"delivery_address_row_1": "Drottninggatan 45",
"delivery_city": "Stockholm",
"delivery_company_name": "Demo Sweden AB",
"delivery_contact_name": "Erik Andersson",
"delivery_contact_phone": "+46812345678",
"rows_attributes": [{
"quantity": 1,
"package_type": "EUR",
"weight": 100.0,
"description": "Goods on EUR pallet"
}],
"options": {
"direct_booking_service_id": '$CARRIER_SERVICE_ID'
}
}'
# Response contains:
# - reference: "CG12345"
# - tracking_url: "https://tracking.carrier.com/..."
# - label_url: "https://www.cargoson.com/labels/abc123.pdf"
const axios = require('axios');
const API_KEY = 'YOUR_API_KEY';
const BASE_URL = 'https://www.cargoson.com/api/v1';
const CARRIER_SERVICE_ID = 85;
async function bookToSchenkerUAB() {
try {
// Step 1: Get freight prices
const pricesResponse = await axios.post(`${BASE_URL}/freightPrices/list`, {
collection_date: '2026-02-15',
collection_country: 'DE',
collection_postcode: '10115',
delivery_country: 'SE',
delivery_postcode: '11122',
rows_attributes: [{
quantity: 1,
package_type: 'EUR',
weight: 100.0,
description: 'Goods on EUR pallet'
}]
}, {
headers: {
'Content-Type': 'application/json',
'Accept': 'application/vnd.api.v1',
'Authorization': `Bearer ${API_KEY}`
}
});
// Step 2: Find service by ID and extract price
const prices = pricesResponse.data.object.prices;
const selectedService = prices.find(p => p.service_id === CARRIER_SERVICE_ID);
if (!selectedService) {
throw new Error(`Service ID ${CARRIER_SERVICE_ID} not found in prices`);
}
const transportPrice = selectedService.price;
console.log(`Selected service price: €${transportPrice}`);
// Step 3: Book shipment using the service_id
const bookingResponse = await axios.post(`${BASE_URL}/queries`, {
collection_date: '2026-02-15',
collection_country: 'DE',
collection_postcode: '10115',
collection_address_row_1: 'Hauptstraße 123',
collection_city: 'Berlin',
collection_company_name: 'Demo GmbH',
collection_contact_name: 'Max Mustermann',
collection_contact_phone: '+4930123456',
delivery_country: 'SE',
delivery_postcode: '11122',
delivery_address_row_1: 'Drottninggatan 45',
delivery_city: 'Stockholm',
delivery_company_name: 'Demo Sweden AB',
delivery_contact_name: 'Erik Andersson',
delivery_contact_phone: '+46812345678',
rows_attributes: [{
quantity: 1,
package_type: 'EUR',
weight: 100.0,
description: 'Goods on EUR pallet'
}],
options: {
direct_booking_service_id: CARRIER_SERVICE_ID
}
}, {
headers: {
'Content-Type': 'application/json',
'Accept': 'application/vnd.api.v1',
'Authorization': `Bearer ${API_KEY}`
}
});
// Extract important fields
const reference = bookingResponse.data.reference;
const trackingUrl = bookingResponse.data.tracking_url;
const labelUrl = bookingResponse.data.label_url;
console.log('Shipment booked successfully!');
console.log(`Reference: ${reference}`);
console.log(`Tracking: ${trackingUrl}`);
console.log(`Label: ${labelUrl}`);
return { reference, trackingUrl, labelUrl };
} catch (error) {
console.error('Error:', error.response?.data || error.message);
}
}
// Usage
bookToSchenkerUAB();
import requests
API_KEY = 'YOUR_API_KEY'
BASE_URL = 'https://www.cargoson.com/api/v1'
CARRIER_SERVICE_ID = 85
def book_to_schenker_uab():
headers = {
'Content-Type': 'application/json',
'Accept': 'application/vnd.api.v1',
'Authorization': f'Bearer {API_KEY}'
}
# Step 1: Get freight prices
prices_data = {
'collection_date': '2026-02-15',
'collection_country': 'DE',
'collection_postcode': '10115',
'delivery_country': 'SE',
'delivery_postcode': '11122',
'rows_attributes': [{
'quantity': 1,
'package_type': 'EUR',
'weight': 100.0,
'description': 'Goods on EUR pallet'
}]
}
prices_response = requests.post(
f'{BASE_URL}/freightPrices/list',
headers=headers,
json=prices_data
)
prices_response.raise_for_status()
# Step 2: Find service by ID and extract price
prices = prices_response.json()['object']['prices']
selected_service = next(
(p for p in prices if p['service_id'] == CARRIER_SERVICE_ID),
None
)
if not selected_service:
raise ValueError(f'Service ID {CARRIER_SERVICE_ID} not found in prices')
transport_price = selected_service['price']
print(f'Selected service price: €{transport_price}')
# Step 3: Book shipment using the service_id
booking_data = {
'collection_date': '2026-02-15',
'collection_country': 'DE',
'collection_postcode': '10115',
'collection_address_row_1': 'Hauptstraße 123',
'collection_city': 'Berlin',
'collection_company_name': 'Demo GmbH',
'collection_contact_name': 'Max Mustermann',
'collection_contact_phone': '+4930123456',
'delivery_country': 'SE',
'delivery_postcode': '11122',
'delivery_address_row_1': 'Drottninggatan 45',
'delivery_city': 'Stockholm',
'delivery_company_name': 'Demo Sweden AB',
'delivery_contact_name': 'Erik Andersson',
'delivery_contact_phone': '+46812345678',
'rows_attributes': [{
'quantity': 1,
'package_type': 'EUR',
'weight': 100.0,
'description': 'Goods on EUR pallet'
}],
'options': {
'direct_booking_service_id': CARRIER_SERVICE_ID
}
}
booking_response = requests.post(
f'{BASE_URL}/queries',
headers=headers,
json=booking_data
)
booking_response.raise_for_status()
booking = booking_response.json()
# Extract important fields
reference = booking['reference']
tracking_url = booking['tracking_url']
label_url = booking['label_url']
print('Shipment booked successfully!')
print(f'Reference: {reference}')
print(f'Tracking: {tracking_url}')
print(f'Label: {label_url}')
return {
'reference': reference,
'tracking_url': tracking_url,
'label_url': label_url
}
# Usage
if __name__ == '__main__':
book_to_schenker_uab()
<?php
$apiKey = 'YOUR_API_KEY';
$baseUrl = 'https://www.cargoson.com/api/v1';
define('CARRIER_SERVICE_ID', 85);
function bookToSchenkerUAB($apiKey, $baseUrl) {
$headers = [
'Content-Type: application/json',
'Accept: application/vnd.api.v1',
'Authorization: Bearer ' . $apiKey
];
// Step 1: Get freight prices
$pricesData = [
'collection_date' => '2026-02-15',
'collection_country' => 'DE',
'collection_postcode' => '10115',
'delivery_country' => 'SE',
'delivery_postcode' => '11122',
'rows_attributes' => [[
'quantity' => 1,
'package_type' => 'EUR',
'weight' => 100.0,
'description' => 'Goods on EUR pallet'
]]
];
$ch = curl_init($baseUrl . '/freightPrices/list');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($pricesData));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$pricesResponse = curl_exec($ch);
curl_close($ch);
$prices = json_decode($pricesResponse, true)['object']['prices'];
// Step 2: Find service by ID and extract price
$selectedService = null;
foreach ($prices as $price) {
if ($price['service_id'] === CARRIER_SERVICE_ID) {
$selectedService = $price;
break;
}
}
if (!$selectedService) {
throw new Exception('Service ID ' . CARRIER_SERVICE_ID . ' not found in prices');
}
$transportPrice = $selectedService['price'];
echo "Selected service price: €$transportPrice
";
// Step 3: Book shipment using the service_id
$bookingData = [
'collection_date' => '2026-02-15',
'collection_country' => 'DE',
'collection_postcode' => '10115',
'collection_address_row_1' => 'Hauptstraße 123',
'collection_city' => 'Berlin',
'collection_company_name' => 'Demo GmbH',
'collection_contact_name' => 'Max Mustermann',
'collection_contact_phone' => '+4930123456',
'delivery_country' => 'SE',
'delivery_postcode' => '11122',
'delivery_address_row_1' => 'Drottninggatan 45',
'delivery_city' => 'Stockholm',
'delivery_company_name' => 'Demo Sweden AB',
'delivery_contact_name' => 'Erik Andersson',
'delivery_contact_phone' => '+46812345678',
'rows_attributes' => [[
'quantity' => 1,
'package_type' => 'EUR',
'weight' => 100.0,
'description' => 'Goods on EUR pallet'
]],
'options' => [
'direct_booking_service_id' => CARRIER_SERVICE_ID
]
];
$ch = curl_init($baseUrl . '/queries');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($bookingData));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$bookingResponse = curl_exec($ch);
curl_close($ch);
$booking = json_decode($bookingResponse, true);
// Extract important fields
$reference = $booking['reference'];
$trackingUrl = $booking['tracking_url'];
$labelUrl = $booking['label_url'];
echo "Shipment booked successfully!
";
echo "Reference: $reference
";
echo "Tracking: $trackingUrl
";
echo "Label: $labelUrl
";
return [
'reference' => $reference,
'tracking_url' => $trackingUrl,
'label_url' => $labelUrl
];
}
// Usage
bookToSchenkerUAB($apiKey, $baseUrl);
?>
require 'net/http'
require 'json'
API_KEY = 'YOUR_API_KEY'
BASE_URL = 'https://www.cargoson.com/api/v1'
CARRIER_SERVICE_ID = 85
def book_to_schenker_uab
headers = {
'Content-Type' => 'application/json',
'Accept' => 'application/vnd.api.v1',
'Authorization' => "Bearer #{API_KEY}"
}
# Step 1: Get freight prices
prices_uri = URI("#{BASE_URL}/freightPrices/list")
prices_data = {
collection_date: '2026-02-15',
collection_country: 'DE',
collection_postcode: '10115',
delivery_country: 'SE',
delivery_postcode: '11122',
rows_attributes: [{
quantity: 1,
package_type: 'EUR',
weight: 100.0,
description: 'Goods on EUR pallet'
}]
}
http = Net::HTTP.new(prices_uri.host, prices_uri.port)
http.use_ssl = true
prices_request = Net::HTTP::Post.new(prices_uri)
headers.each { |k, v| prices_request[k] = v }
prices_request.body = prices_data.to_json
prices_response = http.request(prices_request)
prices = JSON.parse(prices_response.body)['object']['prices']
# Step 2: Find service by ID and extract price
selected_service = prices.find { |p| p['service_id'] == CARRIER_SERVICE_ID }
raise "Service ID #{CARRIER_SERVICE_ID} not found in prices" unless selected_service
transport_price = selected_service['price']
puts "Selected service price: €#{transport_price}"
# Step 3: Book shipment using the service_id
booking_uri = URI("#{BASE_URL}/queries")
booking_data = {
collection_date: '2026-02-15',
collection_country: 'DE',
collection_postcode: '10115',
collection_address_row_1: 'Hauptstraße 123',
collection_city: 'Berlin',
collection_company_name: 'Demo GmbH',
collection_contact_name: 'Max Mustermann',
collection_contact_phone: '+4930123456',
delivery_country: 'SE',
delivery_postcode: '11122',
delivery_address_row_1: 'Drottninggatan 45',
delivery_city: 'Stockholm',
delivery_company_name: 'Demo Sweden AB',
delivery_contact_name: 'Erik Andersson',
delivery_contact_phone: '+46812345678',
rows_attributes: [{
quantity: 1,
package_type: 'EUR',
weight: 100.0,
description: 'Goods on EUR pallet'
}],
options: {
direct_booking_service_id: CARRIER_SERVICE_ID
}
}
booking_request = Net::HTTP::Post.new(booking_uri)
headers.each { |k, v| booking_request[k] = v }
booking_request.body = booking_data.to_json
booking_response = http.request(booking_request)
booking = JSON.parse(booking_response.body)
# Extract important fields
reference = booking['reference']
tracking_url = booking['tracking_url']
label_url = booking['label_url']
puts 'Shipment booked successfully!'
puts "Reference: #{reference}"
puts "Tracking: #{tracking_url}"
puts "Label: #{label_url}"
{
reference: reference,
tracking_url: tracking_url,
label_url: label_url
}
end
# Usage
book_to_schenker_uab
Por qué usar la API de Cargoson para la integración con Schenker UAB
Integrar directamente con la API nativa de Schenker UAB significa lidiar con documentación específica del transportista, manejar formatos de datos únicos y mantener código separado para cada proveedor. Cargoson ofrece una única API RESTful unificada que admite Schenker UAB y más de 2,000 transportistas en los mercados europeos y norteamericanos, con nuevas integraciones agregadas semanalmente. Reducimos el tiempo de desarrollo de meses a días, manejamos actualizaciones de transportistas automáticamente y gestionamos excepciones regionales. Con Cargoson, te enfocas en hacer crecer tu negocio en lugar de gestionar complejidades técnicas de transportistas.
Beneficios de integrar Schenker UAB a través de la API de Cargoson
Una API para todos los transportistas
Reemplaza docenas de integraciones de transportistas separadas con una conexión a Schenker UAB y más de 2,000 otros proveedores a través de la API de Cargoson. No más mantenimiento de múltiples sistemas de autenticación, manejo de diferentes formatos de datos o actualización de código cuando los transportistas cambian sus endpoints.
Documentación clara y soporte
Accede a documentación API clara con ejemplos de código funcionales, descripciones detalladas de parámetros y endpoints claramente definidos. Nuestro equipo de soporte conoce la industria logística y puede ayudarte a resolver desafíos de integración rápidamente.
Ejemplos de código en múltiples lenguajes
Comienza inmediatamente con ejemplos de código listos para usar en cURL, JavaScript, Python, PHP y Ruby. Copia, pega y adáptalos a tu stack, no es necesario descifrar la autenticación, el formato de solicitudes o el manejo de errores desde cero.
Soporte real de expertos en logística
Obtén ayuda de personas que entienden de envíos, no solo de APIs. Ya sea que estés solucionando un problema de integración o necesites asesoramiento sobre la mejor manera de manejar envíos internacionales, nuestro equipo está aquí para ayudar.
El motor de precios de carga más avanzado del mundo
La API de precios de carga de Cargoson va mucho más allá de simples búsquedas de tarifas. Nuestro motor puede leer, analizar y digitalizar cualquier lista de precios de transportista independientemente del formato o estructura, convirtiéndolo en la solución de gestión de tarifas de carga más potente de la industria logística.
Soporte de formato universal
Nuestro motor de precios de carga maneja cualquier formato: archivos Excel estructurados, PDFs complejos, texto libre o incluso listas de precios escritas a mano. Sube tus contratos de transportista en cualquier formato, y nuestro motor de tarifas de carga analizará las reglas de precios, recargos y condiciones automáticamente.
Integración directa con API del transportista
Para transportistas con sistemas modernos (típicamente transportistas de paquetería globales y empresas de carga con orientación tecnológica), obtenemos tarifas directamente de sus APIs en tiempo real. Esto asegura que siempre obtengas los precios más actuales sin actualizaciones manuales.
Precios públicos en línea
¿Aún no tienes un contrato con un transportista? No hay problema. Cargoson puede obtener precios públicos en línea de los transportistas, permitiéndote comparar opciones incluso antes de establecer acuerdos formales.
Solicitudes de tarifas spot
Para envíos complejos o casos especiales, solicita tarifas spot donde los transportistas revisan tus requisitos específicos y proporcionan un presupuesto personalizado. Todo gestionado a través de la misma API unificada.
API de envío de Schenker UAB: Automatización logística simplificada
Automatiza tu proceso de cumplimiento integrando la API de Envío de Cargoson con Schenker UAB y más de 2,000 transportistas en todo el mundo. Crea etiquetas de envío, reserva recogidas y gestiona todos tus transportistas desde una plataforma mientras mantienes tus tarifas negociadas con cada proveedor.
Generación automática de etiquetas
Genera etiquetas de envío aprobadas por el transportista en una única solicitud API. El soporte para múltiples formatos de etiquetas (A4, impresora térmica) y documentación aduanera automática para envíos internacionales significa menos trabajo manual y menos errores de envío.
Comparación de tarifas en tiempo real
Compara tarifas en vivo entre Schenker UAB y tus otros transportistas activados para elegir la mejor opción según costo, velocidad y nivel de servicio.
Mantén tus tarifas negociadas
Conecta tu cuenta existente de Schenker UAB para conservar tus tarifas de envío negociadas. Cargoson simplemente proporciona la integración técnica: mantienes tus relaciones directas con transportistas y acuerdos de precios personalizados.
Seguridad de nivel empresarial para la integración API de Schenker UAB
La infraestructura API de Cargoson cumple con los estándares de cumplimiento europeos, que aseguran una integración segura y lista para auditoría con Schenker UAB para tu negocio:
- Manejo y almacenamiento de datos conforme a GDPR en toda Europa
- Gestión de seguridad de la información certificada ISO 27001
- Cifrado de extremo a extremo para todas las comunicaciones API
¿Listo para integrar el envío de Schenker UAB en tu plataforma?
Reserva una demo para ver cómo la API unificada de Cargoson puede simplificar tus operaciones logísticas
Reservar una DemoTabla de Contenidos
Preguntas Frecuentes
Comienza a Usar la API de Schenker UAB
Obtén tus credenciales API para comenzar la integración