Deutsche Post International API dokumentacija

Integrirano REST API

Popolna API referenca za Deutsche Post International integracijo pošiljanja. Dostop do rezervacij, tovornih cen, generiranja nalepk in sledenja preko Cargosonove enotne API za upravljanje prevozov.

Pridobite svoj API ključ

Deutsche Post International API pregled

Ta API omogoča programski dostop do Deutsche Post International storitev pošiljanja preko Cargosonove enotne platforme za upravljanje prevozov. Integrirajte Deutsche Post International zmogljivosti, vključno z rezervacijo pošiljk, sledenjem, cenovnimi ponudbami in generiranjem nalepk v vaše aplikacije.

API zmogljivosti

  • Ustvarite in upravljajte Deutsche Post International rezervacije pošiljk
  • Sledenje pošiljkam in posodobitve statusa
  • Pridobite ponudbe za tovorne cene in čase prevoza
  • Generirajte nalepke za pošiljanje v več formatih (PDF, PNG, ZPL)
  • Ustvarite nalepke za vračilo za povratno logistiko
  • Poiščite lokacije paketomatov in prevzemnih mest
  • Seznam razpoložljivih storitev prevoznika
  • Avtomatizirane zahteve za prevzem kurirja

Osnovni URL in avtentikacija

Osnovni URL

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

Avtentikacija

Vse zahteve morajo vključevati vaš API ključ in pravilno Accept glavo:

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

Deutsche Post International API za rezervacije

Neposredni API prevoznika

Ustvarite Deutsche Post International pošiljke in pridobite nalepke za pošiljanje z uporabo končne točke Queries. Rezervacije se pošljejo v sistem prevoznika v realnem času in nalepke se generirajo takoj.

Poizvedba proti neposredni rezervaciji

Končna točka Queries podpira dve metodi rezervacije:

  • Način poizvedbe - Ustvarite zahtevo za prevoz brez določitve prevoznika (še). To vam omogoča ročno primerjavo cen in časov dostave prevoznikov, zahtevo za nove spot cene, prilagoditve/posodobitve pošiljke in delegiranje izbire prevoznika drugim, preden naredite končno izbiro prevoznika v Cargosonu.
  • Neposredna rezervacija - Določite ID storitve prevoznika (iz Rate ali Services API), da rezervirate neposredno pri Deutsche Post International. To zagotavlja, da vaša pošiljka uporablja točno storitev, ki ste jo izbrali.

Za neposredno rezervacijo pri Deutsche Post International vedno določite direct_booking_service_id.

POST /queries

Ustvarite poizvedbo pošiljke ali neposredno rezervacijo za Deutsche Post International. Vključite direct_booking_service_id za ustvarjanje takojšnje rezervacije.

Request Parameters

collection_date string required

Datum prevzema v formatu LLLL-MM-DD

collection_country string required

Koda države prevzema (ISO 3166-1 alpha-2)

collection_postcode string required

Poštna številka prevzema

collection_address_row_1 string required

Ulični naslov prevzema

collection_city string required

Mesto prevzema

collection_company_name string required

Ime podjetja pošiljatelja

collection_contact_name string required

Kontaktna oseba pošiljatelja

collection_contact_phone string required

Telefonska številka pošiljatelja

delivery_country string required

Koda države dostave

delivery_postcode string required

Poštna številka dostave

delivery_address_row_1 string required

Ulični naslov dostave

delivery_city string required

Mesto dostave

delivery_company_name string required

Ime podjetja prejemnika

delivery_contact_name string required

Kontaktna oseba prejemnika

delivery_contact_phone string required

Telefonska številka prejemnika

rows_attributes array required

Niz paketov/palet s količino, package_type, težo in opisom

options[direct_booking_service_id] integer

Deutsche Post International ID storitve za neposredno rezervacijo

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 nalepk

Deutsche Post International nalepke za pošiljanje se samodejno generirajo, ko ustvarite rezervacijo. Nalepke so na voljo v več formatih za podporo različnim vrstam tiskalnikov.

Podprti formati nalepk

a4 - A4 PDF format za namizne tiskalnike (4 nalepke na stran)
label_printer - 4x6in (~10x15cm) PDF format za termične tiskalnike

Nalepke so vključene v odgovor rezervacije preko polja label_url. Prenesite in natisnite nalepko iz priloženega URL-ja po rezervaciji.

Deutsche Post International API za cene (tovorne cene)

Cargoson motor
Cargoson izboljšava:

Deutsche Post International ne zagotavlja izvornega API za cene. Cargosonov motor za tovorne cene izračuna cene z uporabo vaših naloženih cenovnih dogovorov, kar vam zagotavlja enako izkušnjo API kot prevozniki z izvornimi API-ji za cene. Naložite lahko cene prevoznikov v katerem koli formatu (Excel, PDF, celo ročno napisane cenike) in mi jih bomo digitalizirali.

Pridobite Deutsche Post International tovorne cene v realnem času pred rezervacijo. Rate API vrne razpoložljive storitve, cene in ocenjene čase dostave.

POST /freightPrices/list

Pridobite ponudbe za tovorne cene od Deutsche Post International in drugih aktiviranih prevoznikov na vašem računu.

Request Parameters

collection_date string required

Datum prevzema v formatu LLLL-MM-DD

collection_country string required

Koda države prevzema (ISO 3166-1 alpha-2)

collection_postcode string required

Poštna številka prevzema

delivery_country string required

Koda države dostave

delivery_postcode string required

Poštna številka dostave

rows_attributes array required

Niz paketov/palet s količino, package_type, težo in 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": "Deutsche Post AG",
        "reg_no": "HRB6792",
        "id": 2669,
        "service": "Main",
        "service_id": 85,
        "price": "19.13",
        "unit": "payable_weight",
        "type": "price_list"
      },
      {
        "carrier": "Deutsche Post AG",
        "reg_no": "HRB6792",
        "id": 2669,
        "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"
      }
    ]
  }
}

Deutsche Post International API za sledenje

Cargoson avtomatizacija
Cargoson izboljšava:

Deutsche Post International ne zagotavlja dogodkov sledenja preko API. Cargoson zagotavlja portal za sledenje, kjer lahko prevoznik ročno posodobi status pošiljke, kar vam in vašim strankam zagotavlja dosledno izkušnjo sledenja.

Sledite Deutsche Post International pošiljkam z uporabo Cargosonove referenčne številke. Pridobite trenutni status, posodobitve lokacije in ocenjeni čas dostave.

GET /bookings/{reference}

Pridobite podrobnosti sledenja za Deutsche Post International pošiljko z uporabo Cargosonove referenčne številke 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"
}

Deutsche Post International API za nalepke za vračilo

Poganja Cargoson
Cargoson izboljšava:

Deutsche Post International izvorno ne podpira nalepk za vračilo. Cargoson generira nalepke za vračilo in upravlja proces povratne logistike preko naše platforme.

Generirajte nalepke za vračilo pošiljanja za Deutsche Post International pošiljke. Nalepke za vračilo omogočajo strankam, da vrnejo artikle z vnaprej plačanim pošiljanjem.

POST /bookings/{reference}/return_labels

Ustvarite nalepko za vračilo za obstoječo Deutsche Post International pošiljko.

Request Parameters

label_format string

Format nalepke: a4 ali label_printer (privzeto: 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"
}

Funkcije nalepk za vračilo

  • Vnaprej plačane nalepke za vračilo pošiljanja
  • Enake možnosti formata kot pri odhodnih nalepkah (A4, termični)
  • Ločena referenca za sledenje za vračila
  • Brezhibna integracija s Deutsche Post International storitvami za vračilo

Deutsche Post International zahteve za kurirja

Neposredni API prevoznika

Cargoson avtomatizira zahteve za prevzem kurirja za Deutsche Post International pošiljke, kar pomeni eno nalogo manj, o kateri morate razmišljati.

Kako Cargoson obravnava zahteve za kurirja

Številni prevozniki zahtevajo, da ustvarite nalepke ločeno in nato ročno zahtevate prevzem kurirja. Drugi nimajo ločenega sistema nalepk in klica kurirja, vsaka pošiljka je popolna, ločena pošiljka. Verjamemo, da bi moral obstajati en sam standard API-jev prevoznikov, vendar trenutno vsak prevoznik ustvarja svoj edinstven sistem, kar uporabnikom otežuje pomnjenje posebnosti in zapletenosti vsakega. Cargoson poenostavi vaše klice kurirjev z obravnavanjem vsake pošiljke celostno: zahteve za kurirje se samodejno upravljajo kot del procesa rezervacije.

Pametna optimizacija prevzema

Cargoson optimizira klice kurirjev za zmanjšanje stroškov in izboljšanje učinkovitosti.

  • 1. Konsolidacija serij - Več pošiljk z iste lokacije se združi v eno zahtevo za prevzem
  • 2. Obravnava specifična za prevoznika - Nekateri prevozniki vključujejo prevzem v rezervacijo, drugi zahtevajo ločene zahteve. Cargoson samodejno obravnava obe varianti za vas
  • 3. Redni urniki prevzemov - Konfigurirajte vnaprej načrtovane prevzeme v določenih intervalih (npr. dnevno v mojo glavno skladišče ob 15:00) in Cargoson bo popolnoma preskočil posamezne klice kurirjev

Prednosti

  • Ni potrebe po sledenju, kateri prevozniki zahtevajo ločene zahteve za kurirja
  • Samodejna optimizacija preprečuje nepotrebne klice za prevzem
  • Podpora za redne urnike prevzemov
  • Poenostavljen potek dela pošiljanja - samo ustvarite rezervacijo

Konfiguracija

Avtomatizacija prevzema kurirja je privzeto omogočena za vse Deutsche Post International pošiljke. Za konfiguracijo rednih urnikov prevzemov ali pravil za optimizacijo po meri kontaktirajte [email protected].

Deutsche Post International API za storitve

Cargoson motor
Cargoson izboljšava:

API za storitve je funkcija, ki jo zagotavlja Cargoson in vrne enotni seznam vseh razpoložljivih storitev od Deutsche Post International in drugih prevoznikov v vašem omrežju. To vam omogoča dinamičen prikaz možnosti pošiljanja vašim strankam brez trdega kodiranja ID-jev storitev.

Pridobite seznam razpoložljivih Deutsche Post International storitev pošiljanja. Uporabite ID-je storitev pri neposrednih rezervacijah, da zagotovite, da dobite točno storitev, ki jo želite.

GET /services/list

Vrni seznam Deutsche Post International storitev, ki so na voljo na računu vašega podjetja.

Example Response

{
  "services": [
    {
      "carrier": {
        "id": 2669,
        "name": "Deutsche Post AG",
        "short_name": "Deutsche Post International",
        "reg_no": "HRB6792"
      },
      "id": 85,
      "name": "Main",
      "service_type": "road_freight"
    },
    {
      "carrier": {
        "id": 2669,
        "name": "Deutsche Post AG",
        "short_name": "Deutsche Post International",
        "reg_no": "HRB6792"
      },
      "id": 123,
      "name": "Express Service",
      "service_type": "express"
    }
  ]
}

Uporaba ID-jev storitev

ID-je storitev iz te končne točke lahko uporabite s parametrom direct_booking_service_id pri ustvarjanju rezervacij za izbiro prave storitve in pošiljanje pošiljke v sistem Deutsche Post International.

Popolni primeri kode

Spodaj so popolni delujoči primeri, ki prikazujejo celoten potek dela: pridobite cene, izberite storitev, rezervirajte pošiljko in pridobite informacije o sledenju.

# Define the service ID you want to use
CARRIER_SERVICE_ID=85

# Step 1: Get freight prices for Deutsche Post International
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 bookToDeutschePostInternational() {
  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
bookToDeutschePostInternational();
import requests

API_KEY = 'YOUR_API_KEY'
BASE_URL = 'https://www.cargoson.com/api/v1'
CARRIER_SERVICE_ID = 85

def book_to_deutsche_post_international():
    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_deutsche_post_international()
<?php
$apiKey = 'YOUR_API_KEY';
$baseUrl = 'https://www.cargoson.com/api/v1';

define('CARRIER_SERVICE_ID', 85);

function bookToDeutschePostInternational($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
bookToDeutschePostInternational($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_deutsche_post_international
  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_deutsche_post_international

Zakaj uporabiti Cargoson API za Deutsche Post International integracijo

Neposredna integracija z izvornim API-jem Deutsche Post International pomeni spopadanje s specifično dokumentacijo prevoznika, obravnavanje edinstvenih formatov podatkov in vzdrževanje ločene kode za vsakega ponudnika. Cargoson ponuja en sam enotni RESTful API, ki podpira Deutsche Post International in 2.000+ prevoznikov na evropskih in severnoameriških trgih, z novimi integracijami, ki se dodajajo tedensko. Skrajšamo razvojni čas z mesecev na dni, samodejno obravnavamo posodobitve prevoznikov in upravljamo regionalne izjeme. S Cargosonom se osredotočite na rast svojega poslovanja namesto na upravljanje tehničnih zapletenosti prevoznikov.

Prednosti integracije Deutsche Post International preko Cargoson API

En API za vse prevoznike

Zamenjajte desetine ločenih integracij prevoznikov z eno povezavo do Deutsche Post International in 2.000+ drugih ponudnikov preko Cargoson API. Ni več vzdrževanja več sistemov avtentikacije, obravnavanja različnih formatov podatkov ali posodabljanja kode, ko prevozniki spremenijo svoje končne točke.

Jasna dokumentacija in podpora

Dostop do jasne API dokumentacije z delujočimi primeri kode, podrobnimi opisi parametrov in jasno opredeljenimi končnimi točkami. Naša ekipa za podporo pozna logistično industrijo in vam lahko pomaga hitro rešiti izzive integracije.

Primeri kode v več jezikih

Začnite takoj z uporabnimi primeri kode v cURL, JavaScript, Python, PHP in Ruby. Kopirajte, prilepite in prilagodite jih svojemu skladu, ni potrebe po ugotavljanju avtentikacije, oblikovanja zahtev ali obravnavanja napak od začetka.

Prava podpora logističnih strokovnjakov

Pridobite pomoč ljudi, ki razumejo pošiljanje, ne samo API-je. Ne glede na to, ali odpravljate težave z integracijo ali potrebujete nasvet o najboljšem načinu obravnavanja mednarodnih pošiljk, je naša ekipa tukaj, da vam pomaga.

Najbolj napreden motor za tovorne cene na svetu

Cargosonov API za tovorne cene gre daleč preko preprostih iskanj cen. Naš motor lahko prebere, analizira in digitalizira kateri koli cenik prevoznika ne glede na format ali strukturo, kar ga naredi za najmočnejšo rešitev za upravljanje tovornih cen v logistični industriji.

Univerzalna podpora formatov

Naš motor za tovorne cene obravnava kateri koli format: strukturirane Excel datoteke, kompleksne PDF-je, prosto besedilo ali celo ročno napisane cenike. Naložite svoje pogodbe s prevozniki v katerem koli formatu in naš motor za tovorne cene bo samodejno razčlenil pravila za določanje cen, doplačila in pogoje.

Neposredna integracija API prevoznika

Za prevoznike s sodobnimi sistemi (običajno globalni paketni prevozniki in tehnološko napredna tovorna podjetja) pridobivamo cene neposredno iz njihovih API-jev v realnem času. To zagotavlja, da vedno dobite najnovejše cene brez ročnih posodobitev.

Javne spletne cene

Še nimate pogodbe s prevoznikom? Ni problema. Cargoson lahko pridobi javne spletne cene od prevoznikov, kar vam omogoča primerjavo možnosti še preden vzpostavite formalne dogovore.

Zahteve za spot cene

Za kompleksne pošiljke ali posebne primere zahtevajte spot cene, kjer prevozniki pregledajo vaše specifične zahteve in zagotovijo ponudbo po meri. Vse upravljano preko istega enotnega API-ja.

Deutsche Post International API za pošiljanje: Poenostavljena avtomatizacija logistike

Avtomatizirajte svoj proces izpolnjevanja z integracijo Cargosonovega API za pošiljanje z Deutsche Post International in 2.000+ prevozniki po vsem svetu. Ustvarite nalepke za pošiljanje, rezervirajte prevzeme in upravljajte vse svoje prevoznike z ene platforme, hkrati pa ohranite svoje dogovorjene cene z vsakim ponudnikom.

Avtomatizirano generiranje nalepk

Generirajte nalepke za pošiljanje, ki jih odobri prevoznik, v eni sami API zahtevi. Podpora za več formatov nalepk (A4, termični tiskalnik) in samodejna carinska dokumentacija za mednarodne pošiljke pomeni manj ročnega dela in manj napak pri pošiljanju.

Primerjava cen v realnem času

Primerjajte cene v živo med Deutsche Post International in vašimi drugimi aktiviranimi prevozniki, da izberete najboljšo možnost glede na stroške, hitrost in raven storitve.

Ohranite svoje dogovorjene cene

Povežite svoj obstoječi Deutsche Post International račun, da ohranite svoje dogovorjene cene pošiljanja. Cargoson preprosto zagotavlja tehnično integracijo: ohranite svoje neposredne odnose s prevozniki in dogovore o cenah po meri.

Varnost podjetniške ravni za Deutsche Post International API integracijo

Cargosonova API infrastruktura izpolnjuje evropske standarde skladnosti, ki zagotavljajo varno, revizijsko pripravljeno Deutsche Post International integracijo za vaše podjetje:

  • GDPR skladno ravnanje in shranjevanje podatkov po Evropi
  • ISO 27001 certificirano upravljanje informacijske varnosti
  • Šifriranje od konca do konca za vse API komunikacije

Pripravljeni integrirati Deutsche Post International pošiljanje v vašo platformo?

Rezervirajte predstavitev, da vidite, kako lahko Cargosonov enotni API poenostavi vaše logistične operacije

Rezerviraj predstavitev

Pogosto zastavljena vprašanja

Cargoson je TMS (sistem za upravljanje prevozov) za evropske in severnoameriške proizvajalce. Naša osrednja vizija je preprostost: integrirajte vse prevoznike in načine tovora (cestni, paketni, zračni, morski, železniški) v eno okno in en API. Ne glede na to, ali pošiljate palete po Evropi ali kontejnerje čez morje, upravljajte vse z ene platforme.

Začetek je preprost. Najprej se registrirajte za Cargoson račun in pridobite svoj API ključ. Nato povežite svoj Deutsche Post International račun v Cargosonovi nadzorni plošči. Ko je to opravljeno, lahko začnete izvajati API zahteve z uporabo naše dokumentacije in primerov kode. Celotna nastavitev običajno traja manj kot eno uro.

Da, potrebovali boste svoj Deutsche Post International račun za uporabo Deutsche Post International storitev preko Cargosona. To zagotavlja, da ohranite svoje dogovorjene cene in vzdržujete svoj neposredni odnos z Deutsche Post International. Cargoson preprosto zagotavlja tehnično integracijski sloj, ki olajša delo z Deutsche Post International in drugimi prevozniki preko enega enotnega API-ja.

Cargoson deluje na preglednem modelu mesečne naročnine brez provizij ali stroškov na pošiljko, nikoli. Vaš načrt vključuje dostop do API, dokumentacijo, podporo in samodejne posodobitve, ko prevozniki spremenijo svoje sisteme. Deutsche Post International plačate neposredno za pošiljanje po vaših dogovorjenih cenah. Brez skritih stroškov, brez presenečenj.

Absolutno! To je glavna prednost uporabe Cargosona. Ko integrirate naš API, lahko delate z Deutsche Post International in 2.000+ drugimi prevozniki z uporabo istih končnih točk, avtentikacije in formatov podatkov. Dodajte nove prevoznike brez pisanja nove integracijske kode, samo aktivirajte jih v svoji Cargosonovi nadzorni plošči.

Da! Integriramo katerega koli prevoznika, ki ga potrebujete, brez dodatnih stroškov. To je vključeno v vašo Cargoson naročnino. Samo nas predstavite svojim kontaktom prevoznika in mi bomo obravnavali tehnično integracijo. Nove integracije se dodajajo dnevno na podlagi zahtev strank.

Da, lahko nastavimo webhooks za obveščanje vašega sistema na podlagi dogodkov in sprožilcev v Cargosonu, kot so posodobitve statusa pošiljke, potrditve rezervacij ali spremembe vaših pošiljk. Kontaktirajte našo ekipo za podporo ali rezervirajte predstavitev za razpravo o vaših zahtevah in nastavitvi webhooks.

Cargoson je morda preveč, če ste majhno podjetje, ki pošilja le nekajkrat na mesec z enim prevoznikom. Te pošiljke lahko verjetno dobro upravljate brez TMS. Prav tako nismo prava izbira, če ste prevoznik ali špediter. Cargoson je zgrajen posebej za lastnike tovora (BCO), kot so proizvajalci in distributerji, ki posedujejo blago, ki se pošilja. Če iščete TMS za upravljanje svojega posredovalnega poslovanja ali operacij prevoznika, nismo zasnovani za ta primer uporabe.

Naš API vrača jasna sporočila o napakah s specifičnimi kodami napak in opisi. Pogoste težave so dokumentirane z rešitvami v naši dokumentaciji za razvijalce. Če obtičite, lahko naša ekipa za podporo pomaga pri odpravljanju težav z integracijo.

Izvajamo razumne omejitve hitrosti za zagotavljanje stabilnosti sistema za vse stranke. Obstajajo tako dolgoročne omejitve hitrosti kot omejitve sunkov, z vrednostmi, ki bi morale biti več kot dovolj za večino podjetij. Če potrebujete višje omejitve za operacije podjetniške ravni, nas kontaktirajte za razpravo o omejitvi po meri za vaš račun.

Začnite uporabljati Deutsche Post International API

Pridobite svoje API poverilnice za začetek integracije

Pridobite svoj API ključ