Dokumentacja API Schenker UAB
Kompletna dokumentacja API do integracji wysyłki Schenker UAB. Dostęp do rezerwacji, stawek frachtowych, generowania etykiet i śledzenia przez ujednolicone API zarządzania transportem Cargoson.
Uzyskaj klucz APIPrzegląd API Schenker UAB
To API zapewnia programowy dostęp do usług wysyłkowych Schenker UAB przez ujednoliconą platformę zarządzania transportem Cargoson. Zintegruj możliwości Schenker UAB, w tym rezerwację przesyłek, śledzenie, wyceny stawek i generowanie etykiet w swoich aplikacjach.
Możliwości API
- Tworzenie i zarządzanie rezerwacjami przesyłek Schenker UAB
- Śledzenie przesyłek i aktualizacje statusu
- Pobieranie wycen stawek frachtowych i czasów tranzytu
- Generowanie etykiet wysyłkowych w wielu formatach (PDF, PNG, ZPL)
- Tworzenie etykiet zwrotnych dla logistyki zwrotnej
- Wyszukiwanie lokalizacji paczkomatów i punktów odbioru
- Lista dostępnych usług przewoźnika
- Automatyczne zlecenia odbioru kurierskiego
Bazowy URL i uwierzytelnianie
Bazowy URL
https://www.cargoson.com/api/v1
Uwierzytelnianie
Wszystkie żądania muszą zawierać klucz API i prawidłowy nagłówek Accept:
Authorization: Bearer TWOJ_KLUCZ_API
Accept: application/vnd.api.v1
API rezerwacji Schenker UAB
Bezpośrednie API przewoźnikaTwórz przesyłki Schenker UAB i pobieraj etykiety wysyłkowe za pomocą endpointu Queries. Rezerwacje są wysyłane do systemu przewoźnika w czasie rzeczywistym, a etykiety są generowane natychmiast.
Zapytanie vs bezpośrednia rezerwacja
Endpoint Queries obsługuje dwie metody rezerwacji:
- Tryb zapytania - Utwórz zlecenie transportowe bez określania przewoźnika (jeszcze). Pozwala to na ręczne porównanie cen i czasów dostawy przewoźników, żądanie nowych wycen spot, wprowadzanie korekt/aktualizacji przesyłki i delegowanie wyboru przewoźnika innym osobom, zanim dokonasz ostatecznego wyboru przewoźnika w Cargoson.
- Bezpośrednia rezerwacja - Określ ID usługi przewoźnika (z API Rate lub Services), aby zarezerwować bezpośrednio u Schenker UAB. Gwarantuje to, że Twoja przesyłka korzysta z dokładnie wybranej usługi.
Aby zarezerwować bezpośrednio u Schenker UAB, zawsze zdefiniuj direct_booking_service_id.
/queries
Utwórz zapytanie o przesyłkę lub bezpośrednią rezerwację dla Schenker UAB. Dołącz direct_booking_service_id, aby utworzyć natychmiastową rezerwację.
Request Parameters
collection_date
string
required
Data odbioru w formacie RRRR-MM-DD
collection_country
string
required
Kod kraju odbioru (ISO 3166-1 alpha-2)
collection_postcode
string
required
Kod pocztowy odbioru
collection_address_row_1
string
required
Adres ulicy odbioru
collection_city
string
required
Miasto odbioru
collection_company_name
string
required
Nazwa firmy nadawcy
collection_contact_name
string
required
Osoba kontaktowa nadawcy
collection_contact_phone
string
required
Numer telefonu nadawcy
delivery_country
string
required
Kod kraju dostawy
delivery_postcode
string
required
Kod pocztowy dostawy
delivery_address_row_1
string
required
Adres ulicy dostawy
delivery_city
string
required
Miasto dostawy
delivery_company_name
string
required
Nazwa firmy odbiorcy
delivery_contact_name
string
required
Osoba kontaktowa odbiorcy
delivery_contact_phone
string
required
Numer telefonu odbiorcy
rows_attributes
array
required
Tablica paczek/palet z ilością, typem opakowania, wagą i opisem
options[direct_booking_service_id]
integer
ID usługi Schenker UAB dla bezpośredniej rezerwacji
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"
}
Generowanie etykiet
Etykiety wysyłkowe Schenker UAB są automatycznie generowane podczas tworzenia rezerwacji. Etykiety są dostępne w wielu formatach, aby obsługiwać różne typy drukarek.
Obsługiwane formaty etykiet
a4 - Format PDF A4 dla drukarek biurowych (4 etykiety na stronę)label_printer - Format PDF 4x6 cali (~10x15cm) dla drukarek termicznych
Etykiety są zawarte w odpowiedzi rezerwacji przez pole label_url. Pobierz i wydrukuj etykietę z podanego URL po rezerwacji.
API stawek Schenker UAB (wycena frachtu)
Silnik CargosonSchenker UAB nie udostępnia natywnego API stawek. Silnik stawek frachtowych Cargoson oblicza ceny przy użyciu przesłanych umów cenowych, zapewniając takie samo doświadczenie API jak przewoźnicy z natywnymi API stawek. Możesz przesłać stawki przewoźników w dowolnym formacie (Excel, PDF, nawet odręcznie pisane cenniki), a my je zdigitalizujemy.
Pobieraj stawki frachtowe Schenker UAB w czasie rzeczywistym przed rezerwacją. API Rate zwraca dostępne usługi, ceny i szacowane czasy dostawy.
/freightPrices/list
Pobierz wyceny stawek frachtowych od Schenker UAB i innych aktywowanych przewoźników na Twoim koncie.
Request Parameters
collection_date
string
required
Data odbioru w formacie RRRR-MM-DD
collection_country
string
required
Kod kraju odbioru (ISO 3166-1 alpha-2)
collection_postcode
string
required
Kod pocztowy odbioru
delivery_country
string
required
Kod kraju dostawy
delivery_postcode
string
required
Kod pocztowy dostawy
rows_attributes
array
required
Tablica paczek/palet z ilością, typem opakowania, wagą i opisem
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 śledzenia Schenker UAB
Bezpośrednie API przewoźnikaŚledź przesyłki Schenker UAB używając numeru referencyjnego Cargoson. Uzyskaj aktualny status, aktualizacje lokalizacji i szacowany czas dostawy.
/bookings/{reference}
Pobierz szczegóły śledzenia przesyłki Schenker UAB używając numeru referencyjnego rezerwacji 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 etykiet zwrotnych Schenker UAB
Napędzane przez CargosonSchenker UAB nie obsługuje natywnie etykiet zwrotnych. Cargoson generuje etykiety zwrotne i zarządza procesem logistyki zwrotnej przez naszą platformę.
Generuj etykiety wysyłkowe zwrotne dla przesyłek Schenker UAB. Etykiety zwrotne pozwalają klientom odsyłać przedmioty za pomocą opłaconej z góry wysyłki.
/bookings/{reference}/return_labels
Utwórz etykietę zwrotną dla istniejącej przesyłki Schenker UAB.
Request Parameters
label_format
string
Format etykiety: a4 lub label_printer (domyślnie: 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"
}
Funkcje etykiet zwrotnych
- Opłacone z góry etykiety wysyłkowe zwrotne
- Te same opcje formatów co etykiety wychodzące (A4, termiczne)
- Oddzielny numer śledzenia dla zwrotów
- Bezproblemowa integracja z usługami zwrotów Schenker UAB
Zlecenia kurierskie Schenker UAB
Automatyzacja CargosonCargoson automatyzuje zlecenia odbioru kurierskiego dla przesyłek Schenker UAB, co oznacza jedno zadanie mniej, o które musisz się martwić.
Jak Cargoson obsługuje zlecenia kurierskie
Wielu przewoźników wymaga osobnego tworzenia etykiet, a następnie ręcznego zlecania odbioru kurierskiego. Inni nie mają oddzielnego systemu etykiet i wezwania kuriera, a każda przesyłka jest kompletną, oddzielną przesyłką. Wierzymy, że powinien istnieć jeden standard API przewoźników, ale obecnie każdy przewoźnik tworzy swój własny unikalny system, co utrudnia użytkownikom zapamiętanie osobliwości i zawiłości każdego z nich. Cargoson upraszcza wezwania kurierskie, traktując każdą przesyłkę holistycznie: zlecenia kurierskie są automatycznie zarządzane jako część procesu rezerwacji.
Inteligentna optymalizacja odbioru
Cargoson optymalizuje wezwania kurierskie, aby zmniejszyć koszty i poprawić efektywność.
- 1. Konsolidacja partiami - Wiele przesyłek z tej samej lokalizacji jest grupowanych w jedno zlecenie odbioru
- 2. Obsługa specyficzna dla przewoźnika - Niektórzy przewoźnicy włączają odbiór w rezerwację, inni wymagają oddzielnych zleceń. Cargoson automatycznie obsługuje oba warianty za Ciebie
- 3. Regularne harmonogramy odbioru - Skonfiguruj zaplanowane odbiory w określonych odstępach czasu (np. codziennie do mojego głównego magazynu o 15:00), a Cargoson całkowicie pominie indywidualne wezwania kurierskie
Korzyści
- Nie musisz śledzić, którzy przewoźnicy wymagają oddzielnych zleceń kurierskich
- Automatyczna optymalizacja zapobiega niepotrzebnym wezwaniom odbioru
- Wsparcie dla regularnych harmonogramów odbioru
- Uproszczony przepływ pracy wysyłkowej - po prostu utwórz rezerwację
Konfiguracja
Automatyzacja odbioru kurierskiego jest domyślnie włączona dla wszystkich przesyłek Schenker UAB. Aby skonfigurować regularne harmonogramy odbioru lub niestandardowe reguły optymalizacji odbioru, skontaktuj się z [email protected].
API usług Schenker UAB
Silnik CargosonAPI usług to funkcja udostępniana przez Cargoson, która zwraca ujednoliconą listę wszystkich dostępnych usług od Schenker UAB i innych przewoźników w Twojej sieci. Pozwala to dynamicznie wyświetlać opcje wysyłki klientom bez hardkodowania ID usług.
Pobierz listę dostępnych usług wysyłkowych Schenker UAB. Używaj ID usług podczas dokonywania bezpośrednich rezerwacji, aby upewnić się, że otrzymasz dokładnie tę usługę, której chcesz.
/services/list
Zwróć listę usług Schenker UAB dostępnych na koncie Twojej firmy.
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"
}
]
}
Używanie ID usług
ID usług z tego endpointu mogą być używane z parametrem direct_booking_service_id podczas tworzenia rezerwacji, aby wybrać odpowiednią usługę i wysłać przesyłkę do systemu Schenker UAB.
Kompletne przykłady kodu
Poniżej znajdują się kompletne działające przykłady pokazujące pełny przepływ pracy: pobierz stawki, wybierz usługę, zarezerwuj przesyłkę i wyodrębnij informacje śledzące.
# 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
Dlaczego warto używać API Cargoson do integracji Schenker UAB
Bezpośrednia integracja z natywnym API Schenker UAB oznacza zmaganie się z dokumentacją specyficzną dla przewoźnika, obsługę unikalnych formatów danych i utrzymywanie oddzielnego kodu dla każdego dostawcy. Cargoson oferuje jedno ujednolicone API RESTful, które obsługuje Schenker UAB i ponad 2000 przewoźników na rynkach europejskich i północnoamerykańskich, z nowymi integracjami dodawanymi co tydzień. Skracamy czas rozwoju z miesięcy do dni, automatycznie obsługujemy aktualizacje przewoźników i zarządzamy wyjątkami regionalnymi. Z Cargoson skupiasz się na rozwijaniu swojego biznesu zamiast zarządzania technicznymi złożonościami przewoźników.
Korzyści z integracji Schenker UAB przez API Cargoson
Jedno API dla wszystkich przewoźników
Zastąp dziesiątki oddzielnych integracji przewoźników jednym połączeniem z Schenker UAB i ponad 2000 innymi dostawcami przez API Cargoson. Koniec z utrzymywaniem wielu systemów uwierzytelniania, obsługą różnych formatów danych lub aktualizowaniem kodu, gdy przewoźnicy zmieniają swoje endpointy.
Przejrzysta dokumentacja i wsparcie
Dostęp do prostej dokumentacji API z działającymi przykładami kodu, szczegółowymi opisami parametrów i jasno zdefiniowanymi endpointami. Nasz zespół wsparcia zna branżę logistyczną i może pomóc szybko rozwiązać wyzwania integracyjne.
Przykłady kodu w wielu językach
Zacznij natychmiast z gotowymi do użycia przykładami kodu w cURL, JavaScript, Python, PHP i Ruby. Kopiuj, wklejaj i dostosowuj je do swojego stosu, nie musisz od zera rozwiązywać uwierzytelniania, formatowania żądań ani obsługi błędów.
Prawdziwe wsparcie od ekspertów logistycznych
Uzyskaj pomoc od osób, które rozumieją wysyłkę, a nie tylko API. Niezależnie od tego, czy rozwiązujesz problem z integracją, czy potrzebujesz porady dotyczącej najlepszego sposobu obsługi przesyłek międzynarodowych, nasz zespół jest tutaj, aby pomóc.
Najbardziej zaawansowany na świecie silnik wyceny frachtu
API wyceny frachtu Cargoson wykracza daleko poza proste wyszukiwanie stawek. Nasz silnik może czytać, analizować i digitalizować dowolny cennik przewoźnika niezależnie od formatu lub struktury, co czyni go najpotężniejszym rozwiązaniem do zarządzania stawkami frachtowymi w branży logistycznej.
Uniwersalne wsparcie formatów
Nasz silnik wyceny frachtu obsługuje dowolny format: strukturalne pliki Excel, złożone pliki PDF, wolny tekst, a nawet odręcznie pisane cenniki. Prześlij swoje umowy przewoźników w dowolnym formacie, a nasz silnik stawek frachtowych automatycznie przeanalizuje zasady cenowe, dopłaty i warunki.
Bezpośrednia integracja API przewoźnika
Dla przewoźników z nowoczesnymi systemami (zazwyczaj globalni przewoźnicy paczek i firmy transportowe zorientowane na technologię) pobieramy stawki bezpośrednio z ich API w czasie rzeczywistym. Gwarantuje to, że zawsze otrzymujesz najbardziej aktualne ceny bez ręcznych aktualizacji.
Publiczne ceny online
Nie masz jeszcze umowy z przewoźnikiem? Nie ma problemu. Cargoson może pobierać publiczne ceny online od przewoźników, umożliwiając porównanie opcji jeszcze przed nawiązaniem formalnych umów.
Zapytania o stawki spot
W przypadku złożonych przesyłek lub szczególnych przypadków poproś o stawki spot, gdzie przewoźnicy przeglądają Twoje konkretne wymagania i przedstawiają niestandardową wycenę. Wszystko zarządzane przez to samo ujednolicone API.
API wysyłki Schenker UAB: Uproszczona automatyzacja logistyki
Zautomatyzuj proces realizacji zamówień, integrując API wysyłki Cargoson z Schenker UAB i ponad 2000 przewoźnikami na całym świecie. Twórz etykiety wysyłkowe, rezerwuj odbiory i zarządzaj wszystkimi swoimi przewoźnikami z jednej platformy, zachowując jednocześnie wynegocjowane stawki z każdym dostawcą.
Automatyczne generowanie etykiet
Generuj zatwierdzone przez przewoźnika etykiety wysyłkowe w jednym żądaniu API. Wsparcie dla wielu formatów etykiet (A4, drukarka termiczna) i automatyczna dokumentacja celna dla przesyłek międzynarodowych oznacza mniej pracy ręcznej i mniej błędów wysyłkowych.
Porównanie stawek w czasie rzeczywistym
Porównaj stawki na żywo w Schenker UAB i innych aktywowanych przewoźnikach, aby wybrać najlepszą opcję na podstawie kosztu, szybkości i poziomu usług.
Zachowaj swoje wynegocjowane stawki
Połącz swoje istniejące konto Schenker UAB, aby zachować wynegocjowane stawki wysyłkowe. Cargoson po prostu zapewnia integrację techniczną: zachowujesz bezpośrednie relacje z przewoźnikami i niestandardowe umowy cenowe.
Bezpieczeństwo klasy korporacyjnej dla integracji API Schenker UAB
Infrastruktura API Cargoson spełnia europejskie standardy zgodności, które zapewniają bezpieczną, gotową do audytu integrację Schenker UAB dla Twojej firmy:
- Zgodna z RODO obsługa i przechowywanie danych w całej Europie
- Certyfikowane zarządzanie bezpieczeństwem informacji ISO 27001
- Szyfrowanie end-to-end dla wszystkich komunikacji API
Gotowy do zintegrowania wysyłki Schenker UAB ze swoją platformą?
Zarezerwuj demo, aby zobaczyć, jak ujednolicone API Cargoson może uprościć Twoje operacje logistyczne
Zarezerwuj demoSpis treści
Najczęściej zadawane pytania
Zacznij używać API Schenker UAB
Uzyskaj dane uwierzytelniające API, aby rozpocząć integrację