Schenker UAB API dokumentacija

Integrirano REST API

Potpuna API referenca za Schenker UAB integraciju otpreme. Pristupite rezervacijama, cijenama prijevoza, generiranju naljepnica i praćenju kroz Cargosonov jedinstveni API za upravljanje prijevozom.

Nabavite svoj API ključ

Schenker UAB API pregled

Ovaj API pruža programski pristup Schenker UAB uslugama otpreme kroz Cargosonovu jedinstvenu platformu za upravljanje prijevozom. Integrirajte Schenker UAB mogućnosti uključujući rezervaciju pošiljaka, praćenje, ponude cijena i generiranje naljepnica u svoje aplikacije.

API mogućnosti

  • Kreirajte i upravljajte Schenker UAB rezervacijama pošiljaka
  • Praćenje pošiljaka i ažuriranja statusa
  • Dobijte ponude cijena prijevoza i vremena isporuke
  • Generirajte naljepnice za otpremu u više formata (PDF, PNG, ZPL)
  • Kreirajte naljepnice za povrat za povratnu logistiku
  • Upitajte lokacije paketomata i mjesta preuzimanja
  • Prikažite dostupne usluge prijevoznika
  • Automatizirani zahtjevi za preuzimanje kurira

Osnovni URL i autentifikacija

Osnovni URL

https://www.cargoson.com/api/v1

Autentifikacija

Svi zahtjevi moraju uključivati vaš API ključ i ispravno Accept zaglavlje:

Authorization: Bearer VAŠ_API_KLJUČ
Accept: application/vnd.api.v1

Schenker UAB API za rezervacije

Izravni API prijevoznika

Kreirajte Schenker UAB pošiljke i preuzmite naljepnice za otpremu koristeći Queries endpoint. Rezervacije se šalju u sustav prijevoznika u stvarnom vremenu i naljepnice se generiraju odmah.

Upit vs izravna rezervacija

Queries endpoint podržava dvije metode rezervacije:

  • Način upita - Kreirajte zahtjev za prijevoz bez specificiranja prijevoznika (još). Ovo vam omogućuje da ručno usporedite cijene i vremena isporuke prijevoznika, zatražite nove spot cijene, napravite prilagodbe/ažuriranja pošiljke i delegirate odabir prijevoznika drugima, prije nego što napravite konačan odabir prijevoznika u Cargosonu.
  • Izravna rezervacija - Specificirajte ID usluge prijevoznika (iz Rate ili Services API-ja) za izravnu rezervaciju s Schenker UAB. Ovo osigurava da vaša pošiljka koristi točno odabranu uslugu.

Za izravnu rezervaciju s Schenker UAB, uvijek definirajte direct_booking_service_id.

POST /queries

Kreirajte upit za pošiljku ili izravnu rezervaciju za Schenker UAB. Uključite direct_booking_service_id za kreiranje trenutne rezervacije.

Request Parameters

collection_date string required

Datum preuzimanja u formatu GGGG-MM-DD

collection_country string required

Kod zemlje preuzimanja (ISO 3166-1 alpha-2)

collection_postcode string required

Poštanski broj preuzimanja

collection_address_row_1 string required

Ulična adresa preuzimanja

collection_city string required

Grad preuzimanja

collection_company_name string required

Naziv tvrtke pošiljatelja

collection_contact_name string required

Kontakt osoba pošiljatelja

collection_contact_phone string required

Telefonski broj pošiljatelja

delivery_country string required

Kod zemlje isporuke

delivery_postcode string required

Poštanski broj isporuke

delivery_address_row_1 string required

Ulična adresa isporuke

delivery_city string required

Grad isporuke

delivery_company_name string required

Naziv tvrtke primatelja

delivery_contact_name string required

Kontakt osoba primatelja

delivery_contact_phone string required

Telefonski broj primatelja

rows_attributes array required

Niz paketa/paleta s količinom, vrstom paketa, težinom i opisom

options[direct_booking_service_id] integer

Schenker UAB ID usluge za izravnu rezervaciju

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"
}

Generiranje naljepnica

Schenker UAB naljepnice za otpremu automatski se generiraju kada kreirate rezervaciju. Naljepnice su dostupne u više formata za podršku različitim vrstama pisača.

Podržani formati naljepnica

a4 - A4 PDF format za stolne pisače (4 naljepnice po stranici)
label_printer - 4x6in (~10x15cm) PDF format za termalne pisače

Naljepnice su uključene u odgovor rezervacije putem label_url polja. Preuzmite i ispišite naljepnicu s navedenog URL-a nakon rezervacije.

Schenker UAB API za cijene (cijene prijevoza)

Cargoson sustav
Cargoson poboljšanje:

Schenker UAB ne pruža izvorni API za cijene. Cargosonov sustav za cijene prijevoza izračunava cijene koristeći vaše učitane sporazume o cijenama, pružajući vam isto API iskustvo kao prijevoznici s izvornim API-jima za cijene. Možete učitati cijene prijevoznika u bilo kojem formatu (Excel, PDF, čak i ručno pisane cjenike) i mi ćemo ih digitalizirati.

Dobijte Schenker UAB cijene prijevoza u stvarnom vremenu prije rezervacije. Rate API vraća dostupne usluge, cijene i procijenjeno vrijeme isporuke.

POST /freightPrices/list

Dobijte ponude cijena prijevoza od Schenker UAB i drugih aktiviranih prijevoznika na vašem računu.

Request Parameters

collection_date string required

Datum preuzimanja u formatu GGGG-MM-DD

collection_country string required

Kod zemlje preuzimanja (ISO 3166-1 alpha-2)

collection_postcode string required

Poštanski broj preuzimanja

delivery_country string required

Kod zemlje isporuke

delivery_postcode string required

Poštanski broj isporuke

rows_attributes array required

Niz paketa/paleta s količinom, vrstom paketa, težinom i opisom

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"
      }
    ]
  }
}

Schenker UAB API za praćenje

Izravni API prijevoznika

Pratite Schenker UAB pošiljke koristeći Cargoson referentni broj. Dobijte trenutni status, ažuriranja lokacije i procijenjeno vrijeme isporuke.

GET /bookings/{reference}

Preuzmite detalje praćenja za Schenker UAB pošiljku koristeći Cargoson referentni broj rezervacije.

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"
}

Schenker UAB API za naljepnice za povrat

Pokreće Cargoson
Cargoson poboljšanje:

Schenker UAB ne podržava izvorno naljepnice za povrat. Cargoson generira naljepnice za povrat i upravlja procesom povratne logistike kroz našu platformu.

Generirajte naljepnice za povrat za Schenker UAB pošiljke. Naljepnice za povrat omogućuju kupcima da vrate artikle koristeći unaprijed plaćenu otpremu.

POST /bookings/{reference}/return_labels

Kreirajte naljepnicu za povrat za postojeću Schenker UAB pošiljku.

Request Parameters

label_format string

Format naljepnice: a4 ili label_printer (zadano: 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"
}

Značajke naljepnica za povrat

  • Unaprijed plaćene naljepnice za povrat
  • Iste opcije formata kao i za odlazne naljepnice (A4, termalni)
  • Odvojena referenca za praćenje povrata
  • Besprijekorna integracija s Schenker UAB uslugama povrata

Schenker UAB zahtjevi za kurirom

Cargoson automatizacija

Cargoson automatizira zahtjeve za preuzimanje kurira za Schenker UAB pošiljke, što čini jedan zadatak manje o kojem morate razmišljati.

Kako Cargoson upravlja zahtjevima za kurirom

Mnogi prijevoznici zahtijevaju da kreirate naljepnice odvojeno, a zatim ručno zatražite preuzimanje kurira. Drugi nemaju odvojeni sustav naljepnica i poziva kurira, i svaka pošiljka je potpuna, odvojena pošiljka. Vjerujemo da bi trebao postojati jedan standard API-ja prijevoznika, ali trenutno svaki prijevoznik kreira svoj jedinstveni sustav, što otežava korisnicima da zapamte posebnosti i složenosti svakog. Cargoson pojednostavljuje vaše pozive kurira tretirajući svaku pošiljku holistički: zahtjevi za kurirom automatski se upravljaju kao dio procesa rezervacije.

Pametna optimizacija preuzimanja

Cargoson optimizira pozive kurira kako bi smanjio troškove i poboljšao učinkovitost.

  • 1. Grupna konsolidacija - Više pošiljaka s iste lokacije grupiraju se u jedan zahtjev za preuzimanje
  • 2. Rukovanje specifično za prijevoznika - Neki prijevoznici uključuju preuzimanje u rezervaciju, drugi zahtijevaju odvojene zahtjeve. Cargoson automatski upravlja obje varijante za vas
  • 3. Redoviti rasporedi preuzimanja - Konfigurirajte unaprijed zakazana preuzimanja u određenim intervalima (npr. dnevno u moje glavno skladište u 15:00) i Cargoson će u potpunosti preskočiti pojedinačne pozive kurira

Prednosti

  • Nije potrebno pratiti koji prijevoznici zahtijevaju odvojene zahtjeve za kurirom
  • Automatska optimizacija sprječava nepotrebne pozive za preuzimanje
  • Podrška za redovite rasporede preuzimanja
  • Pojednostavljen tijek rada otpreme - samo kreirajte rezervaciju

Konfiguracija

Automatizacija preuzimanja kurira omogućena je prema zadanim postavkama za sve Schenker UAB pošiljke. Za konfiguraciju redovitih rasporeda preuzimanja ili prilagođenih pravila optimizacije preuzimanja, kontaktirajte [email protected].

Schenker UAB API za usluge

Cargoson sustav
Cargoson poboljšanje:

API za usluge je značajka koju pruža Cargoson koja vraća jedinstveni popis svih dostupnih usluga od Schenker UAB i drugih prijevoznika u vašoj mreži. Ovo vam omogućuje dinamički prikaz opcija otpreme vašim kupcima bez hardkodiranja ID-ova usluga.

Preuzmite popis dostupnih Schenker UAB usluga otpreme. Koristite ID-ove usluga pri izravnim rezervacijama kako biste osigurali da dobijete točno onu uslugu koju želite.

GET /services/list

Vraća popis Schenker UAB usluga dostupnih na vašem računu tvrtke.

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"
    }
  ]
}

Korištenje ID-ova usluga

ID-ovi usluga iz ovog endpointa mogu se koristiti s direct_booking_service_id parametrom pri kreiranju rezervacija za odabir prave usluge i slanje pošiljke u Schenker UAB sustav.

Potpuni primjeri koda

Ispod su potpuni radni primjeri koji pokazuju cijeli tijek rada: dobijte cijene, odaberite uslugu, rezervirajte pošiljku i izvucite informacije o praćenju.

# 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

Zašto koristiti Cargoson API za Schenker UAB integraciju

Izravna integracija s Schenker UAB izvornim API-jem znači borbu s dokumentacijom specifičnom za prijevoznika, rukovanje jedinstvenim formatima podataka i održavanje odvojenog koda za svakog pružatelja. Cargoson nudi jedan jedinstveni RESTful API koji podržava Schenker UAB i 2.000+ prijevoznika na europskim i sjevernoameričkim tržištima, s novim integracijama koje se dodaju tjedno. Smanjujemo vrijeme razvoja s mjeseci na dane, automatski upravljamo ažuriranjima prijevoznika i upravljamo regionalnim iznimkama. S Cargosonom se fokusirate na rast svog poslovanja umjesto na upravljanje tehničkim složenostima prijevoznika.

Prednosti integracije Schenker UAB putem Cargoson API-ja

Jedan API za sve prijevoznike

Zamijenite desetke odvojenih integracija prijevoznika s jednom vezom na Schenker UAB i 2.000+ drugih pružatelja putem Cargoson API-ja. Nema više održavanja više sustava autentifikacije, rukovanja različitim formatima podataka ili ažuriranja koda kada prijevoznici mijenjaju svoje endpointe.

Jasna dokumentacija i podrška

Pristupite jasnoj API dokumentaciji s radnim primjerima koda, detaljnim opisima parametara i jasno definiranim endpointima. Naš tim podrške poznaje logističku industriju i može vam pomoći brzo riješiti izazove integracije.

Primjeri koda na više jezika

Počnite odmah s primjerima koda spremnim za korištenje u cURL, JavaScript, Python, PHP i Ruby. Kopirajte, zalijepite i prilagodite ih svom stacku, nije potrebno izmišljati autentifikaciju, formatiranje zahtjeva ili rukovanje greškama od nule.

Prava podrška od logističkih stručnjaka

Dobijte pomoć od ljudi koji razumiju otpremu, ne samo API-je. Bilo da rješavate problem integracije ili vam treba savjet o najboljem načinu rukovanja međunarodnim pošiljkama, naš tim je tu da pomogne.

Najnapredniji sustav za cijene prijevoza na svijetu

Cargosonov API za cijene prijevoza daleko nadilazi jednostavna pretraživanja cijena. Naš sustav može čitati, analizirati i digitalizirati bilo koji cjenik prijevoznika bez obzira na format ili strukturu, što ga čini najmoćnijim rješenjem za upravljanje cijenama prijevoza u logističkoj industriji.

Univerzalna podrška za formate

Naš sustav za cijene prijevoza rukuje bilo kojim formatom: strukturirane Excel datoteke, složeni PDF-ovi, slobodni tekst ili čak ručno pisani cjenici. Učitajte svoje ugovore s prijevoznicima u bilo kojem formatu, a naš sustav za cijene prijevoza automatski će parsirati pravila cijena, dodatne naknade i uvjete.

Izravna integracija API-ja prijevoznika

Za prijevoznike s modernim sustavima (obično globalni paketni prijevoznici i tehnološki napredne prijevozne tvrtke), povlačimo cijene izravno iz njihovih API-ja u stvarnom vremenu. Ovo osigurava da uvijek dobijete najnovije cijene bez ručnih ažuriranja.

Javne online cijene

Nemate još ugovor s prijevoznikom? Nema problema. Cargoson može povući javne online cijene od prijevoznika, omogućujući vam usporedbu opcija čak i prije uspostavljanja formalnih sporazuma.

Zahtjevi za spot cijene

Za složene pošiljke ili posebne slučajeve, zatražite spot cijene gdje prijevoznici pregledavaju vaše specifične zahtjeve i pružaju prilagođenu ponudu. Sve se upravlja kroz isti jedinstveni API.

Schenker UAB API za otpremu: Pojednostavljena automatizacija logistike

Automatizirajte svoj proces ispunjenja integrirajući Cargosonov API za otpremu s Schenker UAB i 2.000+ prijevoznika diljem svijeta. Kreirajte naljepnice za otpremu, rezervirajte preuzimanja i upravljajte svim svojim prijevoznicima s jedne platforme dok zadržavate svoje dogovorene cijene sa svakim pružateljem.

Automatizirano generiranje naljepnica

Generirajte naljepnice za otpremu odobrene od prijevoznika u jednom API zahtjevu. Podrška za više formata naljepnica (A4, termalni pisač) i automatska carinska dokumentacija za međunarodne pošiljke znači manje ručnog rada i manje grešaka u otpremi.

Usporedba cijena u stvarnom vremenu

Usporedite cijene uživo između Schenker UAB i vaših drugih aktiviranih prijevoznika kako biste odabrali najbolju opciju na temelju troška, brzine i razine usluge.

Zadržite svoje dogovorene cijene

Povežite svoj postojeći Schenker UAB račun kako biste zadržali svoje dogovorene cijene otpreme. Cargoson jednostavno pruža tehničku integraciju: zadržavate svoje izravne odnose s prijevoznicima i prilagođene sporazume o cijenama.

Sigurnost na razini poduzeća za Schenker UAB API integraciju

Cargosonova API infrastruktura zadovoljava europske standarde usklađenosti, koji osiguravaju sigurnu, spremnu za reviziju Schenker UAB integraciju za vaše poslovanje:

  • GDPR usklađeno rukovanje i pohrana podataka diljem Europe
  • ISO 27001 certificirano upravljanje sigurnošću informacija
  • End-to-end enkripcija za sve API komunikacije

Spremni integrirati Schenker UAB otpremu u svoju platformu?

Rezervirajte demo kako biste vidjeli kako Cargosonov jedinstveni API može pojednostaviti vaše logističke operacije

Rezerviraj demo

Često postavljana pitanja

Cargoson je TMS (sustav za upravljanje prijevozom) za europske i sjevernoameričke proizvođače. Naša središnja vizija je jednostavnost: integrirajte sve prijevoznike i načine prijevoza (cestovni, paketni, zračni, pomorski, željeznički) u jedan prozor i jedan API. Bilo da šaljete palete diljem Europe ili kontejnere preko oceana, upravljajte svime s jedne platforme.

Početak je jednostavan. Prvo se registrirajte za Cargoson račun i nabavite svoj API ključ. Zatim povežite svoj Schenker UAB račun na Cargoson nadzornoj ploči. Kada je to gotovo, možete početi slati API zahtjeve koristeći našu dokumentaciju i primjere koda. Cijelo postavljanje obično traje manje od sat vremena.

Da, trebat će vam vlastiti Schenker UAB račun za korištenje Schenker UAB usluga kroz Cargoson. Ovo osigurava da zadržite svoje dogovorene cijene i održite svoj izravni odnos s Schenker UAB. Cargoson jednostavno pruža tehnički integracijski sloj koji olakšava rad s Schenker UAB i drugim prijevoznicima kroz jedan jedinstveni API.

Cargoson radi na transparentnom modelu mjesečne pretplate bez naknada po pošiljci ili provizija, ikada. Vaš plan uključuje pristup API-ju, dokumentaciju, podršku i automatska ažuriranja kada prijevoznici mijenjaju svoje sustave. Plaćate Schenker UAB izravno za otpremu po vašim dogovorenim cijenama. Nema skrivenih troškova, nema iznenađenja.

Apsolutno! To je glavna prednost korištenja Cargosona. Jednom kada integrirate naš API, možete raditi s Schenker UAB i 2.000+ drugih prijevoznika koristeći iste endpointe, autentifikaciju i formate podataka. Dodajte nove prijevoznike bez pisanja novog integracijskog koda, samo ih aktivirajte na svojoj Cargoson nadzornoj ploči.

Da! Integriramo bilo kojeg prijevoznika koji vam treba bez dodatnih troškova. Ovo je uključeno u vašu Cargoson pretplatu. Samo nas upoznajte sa svojim kontaktima prijevoznika i mi ćemo se pobrinuti za tehničku integraciju. Nove integracije se dodaju dnevno na temelju zahtjeva kupaca.

Da, možemo postaviti webhookove za obavještavanje vašeg sustava na temelju događaja i okidača u Cargosonu, kao što su ažuriranja statusa pošiljke, potvrde rezervacija ili promjene vaših pošiljaka. Kontaktirajte naš tim podrške ili rezervirajte demo kako biste razgovarali o vašim zahtjevima i postavljanju webhooka.

Cargoson bi mogao biti pretjeran ako ste mala tvrtka koja šalje samo nekoliko puta mjesečno s jednim prijevoznikom. Vjerojatno možete dobro upravljati tim pošiljkama bez TMS-a. Također nismo pravi izbor ako ste prijevoznik ili špediter. Cargoson je izgrađen specifično za vlasnike tereta (BCO) poput proizvođača i distributera koji posjeduju robu koja se šalje. Ako tražite TMS za upravljanje svojim špediterskim poslovanjem ili operacijama prijevoznika, nismo dizajnirani za taj slučaj korištenja.

Naš API vraća jasne poruke o greškama s određenim kodovima grešaka i opisima. Uobičajeni problemi su dokumentirani s rješenjima u našoj dokumentaciji za programere. Ako zapnete, naš tim podrške može pomoći u rješavanju problema integracije.

Implementiramo razumna ograničenja brzine kako bismo osigurali stabilnost sustava za sve kupce. Postoje ograničenja za dugoročna razdoblja i ograničenja za kratke navale, s vrijednostima koje bi trebale biti više nego dovoljne za većinu poslovanja. Ako vam trebaju veća ograničenja za operacije na razini poduzeća, kontaktirajte nas kako bismo razgovarali o prilagođenim ograničenjima za vaš račun.

Počnite koristiti Schenker UAB API

Nabavite svoje API vjerodajnice za početak integracije

Nabavite svoj API ključ