DPD Eesti API dokumentace

Integrováno REST API

Kompletní API reference pro DPD Eesti integraci přepravy. Přístup k rezervacím, nákladním sazbám, generování štítků a sledování prostřednictvím jednotného API pro správu přepravy Cargoson.

Získejte svůj API klíč

DPD Eesti API přehled

Toto API poskytuje programový přístup k DPD Eesti přepravním službám prostřednictvím jednotné platformy Cargoson pro správu přepravy. Integrujte DPD Eesti možnosti včetně rezervace zásilek, sledování, cenových nabídek a generování štítků do vašich aplikací.

Možnosti API

  • Vytvářejte a spravujte DPD Eesti rezervace zásilek
  • Sledování zásilek a aktualizace stavu
  • Získejte cenové nabídky nákladní přepravy a dodací lhůty
  • Generujte přepravní štítky v různých formátech (PDF, PNG, ZPL)
  • Vytvářejte vratné štítky pro zpětnou logistiku
  • Dotazujte se na umístění zásilkomatů a výdejních míst
  • Seznam dostupných služeb dopravce
  • Automatizované požadavky na vyzvednutí kurýrem

Základní URL a autentizace

Základní URL

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

Autentizace

Všechny požadavky musí obsahovat váš API klíč a správnou Accept hlavičku:

Authorization: Bearer VÁŠ_API_KLÍČ
Accept: application/vnd.api.v1

DPD Eesti API pro rezervace

Přímé API dopravce

Vytvářejte DPD Eesti zásilky a získávejte přepravní štítky pomocí Queries endpointu. Rezervace jsou odesílány do systému dopravce v reálném čase a štítky jsou generovány okamžitě.

Dotaz vs přímá rezervace

Queries endpoint podporuje dva způsoby rezervace:

  • Režim dotazu - Vytvořte požadavek na přepravu bez specifikace dopravce (zatím). To vám umožňuje ručně porovnat ceny a dodací lhůty dopravců, požádat o nové spot ceny, provést úpravy/aktualizace zásilky a delegovat výběr dopravce na ostatní, než provedete konečný výběr dopravce v Cargoson.
  • Přímá rezervace - Specifikujte ID služby dopravce (z Rate nebo Services API) pro přímou rezervaci s DPD Eesti. To zajistí, že vaše zásilka použije přesně vybranou službu.

Pro přímou rezervaci s DPD Eesti vždy definujte direct_booking_service_id.

POST /queries

Vytvořte dotaz na zásilku nebo přímou rezervaci pro DPD Eesti. Zahrňte direct_booking_service_id pro vytvoření okamžité rezervace.

Request Parameters

collection_date string required

Datum vyzvednutí ve formátu RRRR-MM-DD

collection_country string required

Kód země vyzvednutí (ISO 3166-1 alpha-2)

collection_postcode string required

PSČ vyzvednutí

collection_address_row_1 string required

Ulice vyzvednutí

collection_city string required

Město vyzvednutí

collection_company_name string required

Název společnosti odesílatele

collection_contact_name string required

Kontaktní osoba odesílatele

collection_contact_phone string required

Telefonní číslo odesílatele

delivery_country string required

Kód země doručení

delivery_postcode string required

PSČ doručení

delivery_address_row_1 string required

Ulice doručení

delivery_city string required

Město doručení

delivery_company_name string required

Název společnosti příjemce

delivery_contact_name string required

Kontaktní osoba příjemce

delivery_contact_phone string required

Telefonní číslo příjemce

rows_attributes array required

Pole balíků/palet s množstvím, typem balení, hmotností a popisem

options[direct_booking_service_id] integer

DPD Eesti ID služby pro přímou rezervaci

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

Generování štítků

DPD Eesti přepravní štítky jsou automaticky generovány při vytvoření rezervace. Štítky jsou dostupné v různých formátech pro podporu různých typů tiskáren.

Podporované formáty štítků

a4 - A4 PDF formát pro stolní tiskárny (4 štítky na stránku)
label_printer - 4x6in (~10x15cm) PDF formát pro termotiskárny

Štítky jsou zahrnuty v odpovědi na rezervaci prostřednictvím pole label_url. Stáhněte a vytiskněte štítek z poskytnuté URL po rezervaci.

DPD Eesti API pro sazby (ceny přepravy)

Engine Cargoson
Vylepšení Cargoson:

DPD Eesti neposkytuje nativní API pro sazby. Cenový engine Cargoson pro nákladní přepravu vypočítává ceny pomocí vašich nahraných cenových dohod, což vám poskytuje stejnou zkušenost s API jako dopravci s nativními API pro sazby. Můžete nahrát sazby dopravců v jakémkoli formátu (Excel, PDF, dokonce ručně psané ceníky) a my je digitalizujeme.

Získejte DPD Eesti nákladní sazby v reálném čase před rezervací. Rate API vrací dostupné služby, ceny a odhadované dodací lhůty.

POST /freightPrices/list

Získejte cenové nabídky nákladní přepravy od DPD Eesti a dalších aktivovaných dopravců na vašem účtu.

Request Parameters

collection_date string required

Datum vyzvednutí ve formátu RRRR-MM-DD

collection_country string required

Kód země vyzvednutí (ISO 3166-1 alpha-2)

collection_postcode string required

PSČ vyzvednutí

delivery_country string required

Kód země doručení

delivery_postcode string required

PSČ doručení

rows_attributes array required

Pole balíků/palet s množstvím, typem balení, hmotností a popisem

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": "DPD Eesti AS",
        "reg_no": "10092256",
        "id": 102,
        "service": "Main",
        "service_id": 85,
        "price": "19.13",
        "unit": "payable_weight",
        "type": "price_list"
      },
      {
        "carrier": "DPD Eesti AS",
        "reg_no": "10092256",
        "id": 102,
        "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"
      }
    ]
  }
}

DPD Eesti API pro sledování

Přímé API dopravce

Sledujte DPD Eesti zásilky pomocí referenčního čísla Cargoson. Získejte aktuální stav, aktualizace polohy a odhadovaný čas doručení.

GET /bookings/{reference}

Získejte podrobnosti o sledování DPD Eesti zásilky pomocí referenčního čísla rezervace 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"
}

DPD Eesti API pro vratné štítky

Přímé API dopravce

Generujte vratné přepravní štítky pro DPD Eesti zásilky. Vratné štítky umožňují zákazníkům vrátit zboží pomocí předplacené přepravy.

POST /bookings/{reference}/return_labels

Vytvořte vratný štítek pro existující DPD Eesti zásilku.

Request Parameters

label_format string

Formát štítku: a4 nebo label_printer (výchozí: 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"
}

Funkce vratných štítků

  • Předplacené vratné přepravní štítky
  • Stejné možnosti formátu jako odchozí štítky (A4, termotiskárna)
  • Samostatná sledovací reference pro vrácení
  • Bezproblémová integrace s DPD Eesti vrácenými službami

DPD Eesti požadavky na kurýra

Přímé API dopravce

Cargoson automatizuje požadavky na vyzvednutí kurýrem pro DPD Eesti zásilky, což je o jeden úkol méně, o který se musíte starat.

Jak Cargoson zpracovává požadavky na kurýra

Mnoho přepravních dopravců vyžaduje, abyste vytvořili štítky samostatně a poté ručně požádali o vyzvednutí kurýrem. Jiní nemají samostatný systém štítků plus volání kurýra a každá zásilka je kompletní, samostatná zásilka. Věříme, že by měl existovat jediný standard API dopravců, ale v současnosti každý dopravce vytváří svůj vlastní jedinečný systém, což ztěžuje jejich uživatelům zapamatovat si zvláštnosti a složitosti každého z nich. Cargoson zjednodušuje vaše volání kurýra tím, že zachází s každou zásilkou holisticky: požadavky na kurýra jsou automaticky spravovány jako součást procesu rezervace.

Inteligentní optimalizace vyzvednutí

Cargoson optimalizuje volání kurýra ke snížení nákladů a zlepšení efektivity.

  • 1. Dávková konsolidace - Více zásilek ze stejného místa je seskupeno do jediného požadavku na vyzvednutí
  • 2. Zpracování specifické pro dopravce - Někteří dopravci zahrnují vyzvednutí do rezervace, jiní vyžadují samostatné požadavky. Cargoson automaticky zpracovává obě varianty za vás
  • 3. Pravidelné plány vyzvednutí - Nakonfigurujte předem naplánovaná vyzvednutí v konkrétních intervalech (např. denně do mého hlavního skladu ve 3 odpoledne) a Cargoson zcela přeskočí jednotlivá volání kurýra

Výhody

  • Není třeba sledovat, kteří dopravci vyžadují samostatné požadavky na kurýra
  • Automatická optimalizace zabraňuje zbytečným voláním vyzvednutí
  • Podpora pravidelných plánů vyzvednutí
  • Zjednodušený pracovní postup přepravy - stačí vytvořit rezervaci

Konfigurace

Automatizace vyzvednutí kurýrem je ve výchozím nastavení povolena pro všechny DPD Eesti zásilky. Pro konfiguraci pravidelných plánů vyzvednutí nebo vlastních pravidel optimalizace vyzvednutí kontaktujte [email protected].

DPD Eesti API pro zásilkomaty

Přímé API dopravce

Dotazujte se na dostupná DPD Eesti umístění zásilkomatů a výdejních míst. Použijte tento endpoint k zobrazení seznamu blízkých zásilkomatů zákazníkům během pokladny.

GET /parcelMachines

Vyhledejte DPD Eesti zásilkomaty a výdejní místa podle polohy nebo PSČ.

Request Parameters

country string required

Kód země (ISO 3166-1 alpha-2)

postcode string

Filtrovat podle PSČ

carrier_id integer

Filtrovat podle konkrétního dopravce

reference string

Najít konkrétní zásilkomat podle reference

Example Response

{
  "parcel_machines": [
    {
      "id": 123,
      "reference": "PM12345",
      "name": "Parcel Locker - Hauptstraße",
      "carrier_id": 102,
      "carrier_name": "DPD Eesti AS",
      "address_row_1": "Hauptstraße 123",
      "city": "Berlin",
      "postcode": "10115",
      "country": "DE",
      "latitude": 52.52,
      "longitude": 13.405
    }
  ]
}

DPD Eesti API pro služby

Engine Cargoson
Vylepšení Cargoson:

API pro služby je funkce poskytovaná Cargoson, která vrací jednotný seznam všech dostupných služeb od DPD Eesti a dalších dopravců ve vaší síti. To vám umožňuje dynamicky zobrazovat možnosti přepravy vašim zákazníkům bez hardcodování ID služeb.

Získejte seznam dostupných DPD Eesti přepravních služeb. Použijte ID služeb při provádění přímých rezervací, abyste zajistili, že získáte přesně požadovanou službu.

GET /services/list

Vrátit seznam DPD Eesti služeb dostupných na vašem firemním účtu.

Example Response

{
  "services": [
    {
      "carrier": {
        "id": 102,
        "name": "DPD Eesti AS",
        "short_name": "DPD Eesti",
        "reg_no": "10092256"
      },
      "id": 85,
      "name": "Main",
      "service_type": "road_freight"
    },
    {
      "carrier": {
        "id": 102,
        "name": "DPD Eesti AS",
        "short_name": "DPD Eesti",
        "reg_no": "10092256"
      },
      "id": 123,
      "name": "Express Service",
      "service_type": "express"
    }
  ]
}

Použití ID služeb

ID služeb z tohoto endpointu lze použít s parametrem direct_booking_service_id při vytváření rezervací k výběru správné služby a odeslání zásilky do systému DPD Eesti.

Kompletní příklady kódu

Níže jsou kompletní funkční příklady ukazující celý pracovní postup: získejte sazby, vyberte službu, rezervujte zásilku a extrahujte informace o sledování.

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

# Step 1: Get freight prices for DPD Eesti
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 bookToDPDEesti() {
  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
bookToDPDEesti();
import requests

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

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

define('CARRIER_SERVICE_ID', 85);

function bookToDPDEesti($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
bookToDPDEesti($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_dpd_eesti
  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_dpd_eesti

Proč používat Cargoson API pro DPD Eesti integraci

Přímá integrace s nativním API DPD Eesti znamená potýkání se s dokumentací specifickou pro dopravce, zpracování jedinečných datových formátů a udržování samostatného kódu pro každého poskytovatele. Cargoson nabízí jediné jednotné RESTful API, které podporuje DPD Eesti a 2 000+ dopravců na evropských a severoamerických trzích, s novými integracemi přidávanými týdně. Zkracujeme dobu vývoje z měsíců na dny, automaticky zpracováváme aktualizace dopravců a spravujeme regionální výjimky. S Cargoson se zaměřujete na růst vašeho podnikání místo správy technických složitostí dopravců.

Výhody integrace DPD Eesti prostřednictvím Cargoson API

Jedno API pro všechny dopravce

Nahraďte desítky samostatných integrací dopravců jedním připojením k DPD Eesti a 2 000+ dalším poskytovatelům prostřednictvím Cargoson API. Už nemusíte udržovat více autentizačních systémů, zpracovávat různé datové formáty nebo aktualizovat kód, když dopravci změní své endpointy.

Jasná dokumentace a podpora

Přístup k přímočaré API dokumentaci s funkčními příklady kódu, podrobnými popisy parametrů a jasně definovanými endpointy. Náš tým podpory zná logistický průmysl a může vám pomoci rychle vyřešit problémy s integrací.

Příklady kódu ve více jazycích

Začněte okamžitě s připravenými příklady kódu v cURL, JavaScript, Python, PHP a Ruby. Zkopírujte, vložte a přizpůsobte je svému stacku, není třeba vymýšlet autentizaci, formátování požadavků nebo zpracování chyb od nuly.

Skutečná podpora od logistických expertů

Získejte pomoc od lidí, kteří rozumí přepravě, nejen API. Ať už řešíte problém s integrací nebo potřebujete radu ohledně nejlepšího způsobu zpracování mezinárodních zásilek, náš tým je tu, aby pomohl.

Nejpokročilejší cenový engine pro nákladní přepravu na světě

Cargoson API pro ceny nákladní přepravy jde daleko za jednoduché vyhledávání sazeb. Náš engine dokáže číst, analyzovat a digitalizovat jakýkoli ceník dopravce bez ohledu na formát nebo strukturu, což z něj činí nejsilnější řešení pro správu nákladních sazeb v logistickém průmyslu.

Univerzální podpora formátů

Náš cenový engine pro nákladní přepravu zpracovává jakýkoli formát: strukturované soubory Excel, složité PDF, volný text nebo dokonce ručně psané ceníky. Nahrajte své smlouvy s dopravci v jakémkoli formátu a náš engine pro nákladní sazby automaticky analyzuje cenová pravidla, příplatky a podmínky.

Přímá integrace API dopravce

U dopravců s moderními systémy (typicky globální balíkoví dopravci a technologicky pokročilé nákladní společnosti) stahujeme sazby přímo z jejich API v reálném čase. To zajišťuje, že vždy získáte nejaktuálnější ceny bez ručních aktualizací.

Veřejné online ceny

Ještě nemáte smlouvu s dopravcem? Žádný problém. Cargoson může stahovat veřejné online ceny od dopravců, což vám umožňuje porovnávat možnosti ještě před navázáním formálních dohod.

Požadavky na spot sazby

Pro složité zásilky nebo speciální případy požádejte o spot sazby, kde dopravci zkontrolují vaše konkrétní požadavky a poskytnou vlastní nabídku. Vše spravováno prostřednictvím stejného jednotného API.

DPD Eesti API pro přepravu: Zjednodušená automatizace logistiky

Automatizujte svůj proces plnění integrací Cargoson API pro přepravu s DPD Eesti a 2 000+ dopravci po celém světě. Vytvářejte přepravní štítky, rezervujte vyzvednutí a spravujte všechny své dopravce z jedné platformy při zachování vyjednaných sazeb s každým poskytovatelem.

Automatizované generování štítků

Generujte štítky schválené dopravcem v jediném API požadavku. Podpora více formátů štítků (A4, termotiskárna) a automatická celní dokumentace pro mezinárodní zásilky znamená méně ruční práce a méně chyb při přepravě.

Porovnání sazeb v reálném čase

Porovnejte živé sazby napříč DPD Eesti a vašimi dalšími aktivovanými dopravci a vyberte nejlepší možnost na základě nákladů, rychlosti a úrovně služeb.

Zachovejte si vyjednané sazby

Připojte svůj stávající DPD Eesti účet, abyste si zachovali vyjednané přepravní sazby. Cargoson jednoduše poskytuje technickou integraci: zachováváte si přímé vztahy s dopravci a vlastní cenové dohody.

Zabezpečení na podnikové úrovni pro DPD Eesti API integraci

Infrastruktura API Cargoson splňuje evropské standardy compliance, které zajišťují bezpečnou, audit-ready DPD Eesti integraci pro vaše podnikání:

  • Zpracování a ukládání dat v souladu s GDPR v celé Evropě
  • ISO 27001 certifikovaná správa informační bezpečnosti
  • End-to-end šifrování pro veškerou API komunikaci

Jste připraveni integrovat DPD Eesti přepravu do své platformy?

Rezervujte si demo a zjistěte, jak může jednotné API Cargoson zjednodušit vaše logistické operace

Rezervovat demo

Často kladené otázky

Cargoson je TMS (systém pro správu přepravy) pro evropské a severoamerické výrobce. Naše hlavní vize je jednoduchost: integrovat jakékoli a všechny dopravce a nákladní režimy (silniční, balíková, letecká, námořní, železniční) do jednoho okna a jednoho API. Ať už přepravujete palety po Evropě nebo kontejnery přes oceán, spravujte vše z jediné platformy.

Začít je jednoduché. Nejprve si zaregistrujte účet Cargoson a získejte svůj API klíč. Poté připojte svůj DPD Eesti účet v ovládacím panelu Cargoson. Jakmile je to hotovo, můžete začít provádět API požadavky pomocí naší dokumentace a příkladů kódu. Celé nastavení obvykle trvá méně než hodinu.

Ano, budete potřebovat svůj vlastní DPD Eesti účet pro použití DPD Eesti služeb prostřednictvím Cargoson. To zajišťuje, že si zachováte vyjednané sazby a udržíte přímý vztah s DPD Eesti. Cargoson jednoduše poskytuje technickou integrační vrstvu, která usnadňuje práci s DPD Eesti a dalšími dopravci prostřednictvím jednoho jednotného API.

Cargoson funguje na transparentním modelu měsíčního předplatného bez poplatků za zásilku nebo provizí, nikdy. Váš plán zahrnuje přístup k API, dokumentaci, podporu a automatické aktualizace, když dopravci změní své systémy. DPD Eesti platíte přímo za přepravu podle vašich vyjednaných sazeb. Žádné skryté náklady, žádná překvapení.

Absolutně! To je hlavní výhoda použití Cargoson. Jakmile integrujete naše API, můžete pracovat s DPD Eesti a 2 000+ dalšími dopravci pomocí stejných endpointů, autentizace a datových formátů. Přidávejte nové dopravce bez psaní nového integračního kódu, stačí je aktivovat ve vašem ovládacím panelu Cargoson.

Ano! Integrujeme jakéhokoli dopravce, kterého potřebujete, bez příplatku. To je zahrnuto ve vašem předplatném Cargoson. Stačí nás představit vašim kontaktům dopravců a my se postaráme o technickou integraci. Nové integrace jsou přidávány denně na základě požadavků zákazníků.

Ano, můžeme nastavit webhooky pro upozornění vašeho systému na základě událostí a spouštěčů v Cargoson, jako jsou aktualizace stavu zásilky, potvrzení rezervace nebo změny vašich zásilek. Kontaktujte náš tým podpory nebo si rezervujte demo pro projednání vašich požadavků na webhooky a nastavení.

Cargoson může být přehnané, pokud jste malá společnost přepravující jen několikrát měsíčně s jediným dopravcem. Tyto zásilky pravděpodobně zvládnete dobře bez TMS. Také nejsme správná volba, pokud jste dopravce nebo speditér. Cargoson je vytvořen speciálně pro vlastníky nákladu (BCO), jako jsou výrobci a distributoři, kteří vlastní přepravované zboží. Pokud hledáte TMS pro správu vašeho spedičního podnikání nebo operací dopravce, nejsme navrženi pro tento případ použití.

Naše API vrací jasné chybové zprávy se specifickými kódy chyb a popisy. Běžné problémy jsou zdokumentovány s řešeními v naší vývojářské dokumentaci. Pokud se zaseknete, náš tým podpory může pomoci s řešením problémů s integrací.

Implementujeme rozumné limity rychlosti pro zajištění stability systému pro všechny zákazníky. Existují jak dlouhodobé limity rychlosti, tak burst limity, s hodnotami, které by měly být více než dostatečné pro většinu podniků. Pokud potřebujete vyšší limity pro operace v podnikovém měřítku, kontaktujte nás pro projednání vlastních limitů rychlosti pro váš účet.

Začněte používat DPD Eesti API

Získejte své API přihlašovací údaje pro zahájení integrace

Získejte svůj API klíč