DPD Eesti API-dokumentasjon

Integrert REST API

Komplett API-referanse for DPD Eesti forsendelseintegrasjon. Få tilgang til booking, fraktrater, etikettgenerering og sporing gjennom Cargosons enhetlige API for transportadministrasjon.

Få din API-nøkkel

DPD Eesti API-oversikt

Dette API-et gir programmatisk tilgang til DPD Eesti forsendelsetjenester gjennom Cargosons enhetlige plattform for transportadministrasjon. Integrer DPD Eesti-funksjoner inkludert forsendelsebooking, sporing, ratetilbud og etikettgenerering i applikasjonene dine.

API-funksjoner

  • Opprett og administrer DPD Eesti forsendelsebookinger
  • Forsendelsesporing og statusoppdateringer
  • Få fraktpristilbud og transittider
  • Generer fraktetiketter i flere formater (PDF, PNG, ZPL)
  • Opprett returfraktetiketter for returlogistikk
  • Søk etter pakkebokser og hentepunkter
  • List tilgjengelige transportørtjenester
  • Automatiserte budforespørsler

Basis-URL og autentisering

Basis-URL

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

Autentisering

Alle forespørsler må inkludere din API-nøkkel og riktig Accept-header:

Authorization: Bearer DIN_API_NØKKEL
Accept: application/vnd.api.v1

DPD Eesti Booking-API

Direkte transportør-API

Opprett DPD Eesti forsendelser og hent fraktetiketter ved hjelp av Queries-endepunktet. Bookinger sendes til transportørens system i sanntid og etiketter genereres umiddelbart.

Query vs direkte booking

Queries-endepunktet støtter to bookingmetoder:

  • Query-modus - Opprett en transportforespørsel uten å spesifisere en transportør (ennå). Dette lar deg manuelt sammenligne transportørpriser og leveringstider, be om nye spot-priser, gjøre justeringer/oppdateringer til forsendelsen, og delegere transportørvalg til andre, før du gjør det endelige transportørvalget i Cargoson.
  • Direkte booking - Spesifiser en transportørtjeneste-ID (fra Rate- eller Services-API) for å booke direkte med DPD Eesti. Dette sikrer at forsendelsen din bruker nøyaktig den tjenesten du valgte.

For å booke direkte til DPD Eesti, definer alltid direct_booking_service_id.

POST /queries

Opprett en forsendelseforespørsel eller direkte booking for DPD Eesti. Inkluder direct_booking_service_id for å opprette en umiddelbar booking.

Request Parameters

collection_date string required

Hentedato i ÅÅÅÅ-MM-DD-format

collection_country string required

Hentelandskode (ISO 3166-1 alpha-2)

collection_postcode string required

Hentepostnummer

collection_address_row_1 string required

Hentegateadresse

collection_city string required

Henteby

collection_company_name string required

Avsenders firmanavn

collection_contact_name string required

Avsenders kontaktperson

collection_contact_phone string required

Avsenders telefonnummer

delivery_country string required

Leveringslandskode

delivery_postcode string required

Leveringspostnummer

delivery_address_row_1 string required

Leveringsgateadresse

delivery_city string required

Leveringsby

delivery_company_name string required

Mottakers firmanavn

delivery_contact_name string required

Mottakers kontaktperson

delivery_contact_phone string required

Mottakers telefonnummer

rows_attributes array required

Array av pakker/paller med antall, pakketype, vekt og beskrivelse

options[direct_booking_service_id] integer

DPD Eesti tjeneste-ID for direkte booking

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

Etikettgenerering

DPD Eesti fraktetiketter genereres automatisk når du oppretter en booking. Etiketter er tilgjengelige i flere formater for å støtte forskjellige skrivertyper.

Støttede etikettformater

a4 - A4 PDF-format for skrivebordsskrivere (4 etiketter per side)
label_printer - 4x6in (~10x15cm) PDF-format for termoskrivere

Etiketter er inkludert i bookingsvaret via label_url-feltet. Last ned og skriv ut etiketten fra den oppgitte URL-en etter booking.

DPD Eesti Rate-API (fraktprising)

Cargoson-motor
Cargoson-forbedring:

DPD Eesti tilbyr ikke et native rate-API. Cargosons fraktprismotor beregner priser ved hjelp av dine opplastede prisavtaler, og gir deg samme API-opplevelse som transportører med native rate-API-er. Du kan laste opp transportørpriser i hvilket som helst format (Excel, PDF, til og med håndskrevne prislister) og vi vil digitalisere dem.

Få sanntids DPD Eesti fraktrater før booking. Rate-API returnerer tilgjengelige tjenester, priser og estimerte leveringstider.

POST /freightPrices/list

Få fraktpristilbud fra DPD Eesti og andre aktiverte transportører på kontoen din.

Request Parameters

collection_date string required

Hentedato i ÅÅÅÅ-MM-DD-format

collection_country string required

Hentelandskode (ISO 3166-1 alpha-2)

collection_postcode string required

Hentepostnummer

delivery_country string required

Leveringslandskode

delivery_postcode string required

Leveringspostnummer

rows_attributes array required

Array av pakker/paller med antall, pakketype, vekt og beskrivelse

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 Sporing-API

Direkte transportør-API

Spor DPD Eesti forsendelser ved hjelp av Cargoson-referansenummeret. Få gjeldende status, posisjonsoppdateringer og estimert leveringstid.

GET /bookings/{reference}

Hent sporingsdetaljer for en DPD Eesti forsendelse ved hjelp av Cargoson-bookingreferansen.

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 Returfraktetiketter-API

Direkte transportør-API

Generer returfraktetiketter for DPD Eesti forsendelser. Returfraktetiketter lar kunder sende varer tilbake med forhåndsbetalt frakt.

POST /bookings/{reference}/return_labels

Opprett en returfraktetikett for en eksisterende DPD Eesti forsendelse.

Request Parameters

label_format string

Etikettformat: a4 eller label_printer (standard: 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"
}

Returfraktetikett-funksjoner

  • Forhåndsbetalte returfraktetiketter
  • Samme formatalternativer som utgående etiketter (A4, termisk)
  • Separat sporingsreferanse for returer
  • Sømløs integrasjon med DPD Eesti returtjenester

DPD Eesti budforespørsler

Direkte transportør-API

Cargoson automatiserer budhenteforespørsler for DPD Eesti forsendelser, noe som gjør det til én oppgave mindre du trenger å tenke på.

Hvordan Cargoson håndterer budforespørsler

Mange frakttransportører krever at du oppretter etiketter separat og deretter manuelt ber om budhenting. Andre har ikke et separat system for etikett pluss budbestilling, og hver forsendelse er en komplett, separat forsendelse. Vi mener det bør være én enkelt standard for transportør-API-er, men for øyeblikket lager hver transportør sitt eget unike system, noe som gjør det vanskelig for brukerne å huske hver enkelt sine særegenheter og forviklinger. Cargoson forenkler budbestillingene dine ved å behandle hver forsendelse helhetlig: budforespørsler administreres automatisk som en del av bookingprosessen.

Smart henteoptimalisering

Cargoson optimaliserer budbestillinger for å redusere kostnader og forbedre effektiviteten.

  • 1. Batchkonsolidering - Flere forsendelser fra samme sted grupperes i én henteforespørsel
  • 2. Transportørspesifikk håndtering - Noen transportører inkluderer henting i bookingen, andre krever separate forespørsler. Cargoson håndterer begge varianter automatisk for deg
  • 3. Regelmessige henteplaner - Konfigurer forhåndsplanlagte hentinger med spesifikke intervaller (f.eks. daglig til hovedlageret mitt kl. 15.00) og Cargoson vil hoppe over individuelle budbestillinger helt

Fordeler

  • Ingen behov for å spore hvilke transportører som krever separate budforespørsler
  • Automatisk optimalisering forhindrer unødvendige hentebestillinger
  • Støtte for regelmessige henteplaner
  • Forenklet forsendelsesarbeidsflyt - bare opprett bookingen

Konfigurasjon

Automatisering av budhenting er aktivert som standard for alle DPD Eesti forsendelser. For å konfigurere regelmessige henteplaner eller tilpassede henteoptimaliseringsregler, kontakt [email protected].

DPD Eesti Pakkebokser-API

Direkte transportør-API

Søk etter tilgjengelige DPD Eesti pakkebokser og hentepunkter. Bruk dette endepunktet for å vise kunder en liste over nærliggende pakkebokser under utsjekking.

GET /parcelMachines

Søk etter DPD Eesti pakkebokser og hentepunkter etter plassering eller postnummer.

Request Parameters

country string required

Landskode (ISO 3166-1 alpha-2)

postcode string

Filtrer etter postnummer

carrier_id integer

Filtrer etter spesifikk transportør

reference string

Finn spesifikk pakkeboks etter referanse

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 Tjenester-API

Cargoson-motor
Cargoson-forbedring:

Services-API er en Cargoson-levert funksjon som returnerer en enhetlig liste over alle tilgjengelige tjenester fra DPD Eesti og andre transportører i nettverket ditt. Dette lar deg dynamisk vise fraktalternativer til kundene dine uten å hardkode tjeneste-ID-er.

Hent en liste over tilgjengelige DPD Eesti forsendelsetjenester. Bruk tjeneste-ID-er når du gjør direkte bookinger for å sikre at du får nøyaktig den tjenesten du ønsker.

GET /services/list

Returner liste over DPD Eesti tjenester tilgjengelig på din firmakonto.

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

Bruke tjeneste-ID-er

Tjeneste-ID-er fra dette endepunktet kan brukes med direct_booking_service_id-parameteren når du oppretter bookinger for å velge riktig tjeneste og sende forsendelsen til DPD Eesti-systemet.

Komplette kodeeksempler

Nedenfor er komplette fungerende eksempler som viser hele arbeidsflyten: få rater, velg en tjeneste, book forsendelse og hent sporingsinformasjon.

# 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

Hvorfor bruke Cargoson API for DPD Eesti integrasjon

Å integrere direkte med DPD Eestis native API betyr å slite med transportørspesifikk dokumentasjon, håndtere unike dataformater og vedlikeholde separat kode for hver leverandør. Cargoson tilbyr ett enkelt enhetlig RESTful API som støtter DPD Eesti og 2000+ transportører på tvers av europeiske og nordamerikanske markeder, med nye integrasjoner lagt til ukentlig. Vi reduserer utviklingstiden fra måneder til dager, håndterer transportøroppdateringer automatisk og administrerer regionale unntak. Med Cargoson fokuserer du på å vokse virksomheten din i stedet for å håndtere transportørers tekniske kompleksiteter.

Fordeler ved å integrere DPD Eesti via Cargoson API

Ett API for alle transportører

Erstatt dusinvis av separate transportørintegrasjoner med én tilkobling til DPD Eesti og 2000+ andre leverandører via Cargoson API. Ikke mer vedlikehold av flere autentiseringssystemer, håndtering av forskjellige dataformater eller oppdatering av kode når transportører endrer sine endepunkter.

Klar dokumentasjon og støtte

Få tilgang til enkel API-dokumentasjon med fungerende kodeeksempler, detaljerte parameterbeskrivelser og klart definerte endepunkter. Vårt supportteam kjenner logistikkbransjen og kan hjelpe deg med å løse integrasjonsutfordringer raskt.

Kodeeksempler på flere språk

Kom i gang umiddelbart med klare til bruk kodeeksempler i cURL, JavaScript, Python, PHP og Ruby. Kopier, lim inn og tilpass dem til din stack, ingen behov for å finne ut autentisering, forespørselsformatering eller feilhåndtering fra bunnen av.

Ekte støtte fra logistikkeksperter

Få hjelp fra folk som forstår frakt, ikke bare API-er. Enten du feilsøker et integrasjonsproblem eller trenger råd om den beste måten å håndtere internasjonale forsendelser på, er teamet vårt her for å hjelpe.

Verdens mest avanserte fraktprismotor

Cargosons fraktpris-API går langt utover enkle rateoppslag. Vår motor kan lese, analysere og digitalisere enhver transportørprisliste uavhengig av format eller struktur, noe som gjør den til den kraftigste fraktadministrasjonsløsningen i logistikkbransjen.

Universell formatstøtte

Vår fraktprismotor håndterer alle formater: strukturerte Excel-filer, komplekse PDF-er, friteksttekst eller til og med håndskrevne prislister. Last opp transportørkontraktene dine i hvilket som helst format, og vår fraktprismotor vil parse prisreglene, tilleggsavgiftene og betingelsene automatisk.

Direkte transportør-API-integrasjon

For transportører med moderne systemer (typisk globale pakketransportører og teknologifremmede fraktselskaper), henter vi rater direkte fra deres API-er i sanntid. Dette sikrer at du alltid får den mest oppdaterte prisingen uten manuelle oppdateringer.

Offentlige online-priser

Har du ikke en kontrakt med en transportør ennå? Ikke noe problem. Cargoson kan hente offentlige online-priser fra transportører, slik at du kan sammenligne alternativer selv før du etablerer formelle avtaler.

Spot-rateforespørsler

For komplekse forsendelser eller spesielle tilfeller, be om spot-rater hvor transportører gjennomgår dine spesifikke krav og gir et tilpasset tilbud. Alt administrert gjennom samme enhetlige API.

DPD Eesti forsendelses-API: Forenklet logistikkautomatisering

Automatiser oppfyllelsesprosessen din ved å integrere Cargosons forsendelses-API med DPD Eesti og 2000+ transportører over hele verden. Opprett fraktetiketter, book hentinger og administrer alle transportørene dine fra én plattform samtidig som du beholder dine forhandlede priser med hver leverandør.

Automatisert etikettgenerering

Generer transportørgodkjente fraktetiketter i én enkelt API-forespørsel. Støtte for flere etikettformater (A4, termoskriver) og automatisk tolldokumentasjon for internasjonale forsendelser betyr mindre manuelt arbeid og færre fraktefeil.

Sanntids ratesammenligning

Sammenlign live-rater på tvers av DPD Eesti og dine andre aktiverte transportører for å velge det beste alternativet basert på kostnad, hastighet og tjenestenivå.

Behold dine forhandlede priser

Koble til din eksisterende DPD Eesti-konto for å beholde dine forhandlede fraktpriser. Cargoson tilbyr ganske enkelt den tekniske integrasjonen: du beholder dine direkte transportørforhold og tilpassede prisavtaler.

Sikkerhet på bedriftsnivå for DPD Eesti API-integrasjon

Cargosons API-infrastruktur oppfyller europeiske samsvarsstandarder, som sikrer sikker, revisjonsklar DPD Eesti-integrasjon for virksomheten din:

  • GDPR-kompatibel datahåndtering og lagring over hele Europa
  • ISO 27001-sertifisert informasjonssikkerhetsstyring
  • Ende-til-ende-kryptering for all API-kommunikasjon

Klar til å integrere DPD Eesti forsendelse i plattformen din?

Book en demo for å se hvordan Cargosons enhetlige API kan forenkle logistikkoperasjonene dine

Book en demo

Ofte stilte spørsmål

Cargoson er et TMS (Transport Management System) for europeiske og nordamerikanske produsenter. Vår sentrale visjon er enkelhet: integrer alle transportører og fraktmoduser (vei, pakke, fly, sjø, jernbane) i ett vindu og ett API. Enten du sender paller over Europa eller containere over havet, administrer alt fra én enkelt plattform.

Å komme i gang er enkelt. Først, registrer deg for en Cargoson-konto og få din API-nøkkel. Deretter kobler du til din DPD Eesti-konto i Cargoson-dashbordet. Når det er gjort, kan du begynne å gjøre API-forespørsler ved hjelp av vår dokumentasjon og kodeeksempler. Hele oppsettet tar vanligvis mindre enn en time.

Ja, du trenger din egen DPD Eesti-konto for å bruke DPD Eesti-tjenester gjennom Cargoson. Dette sikrer at du beholder dine forhandlede priser og opprettholder ditt direkte forhold til DPD Eesti. Cargoson tilbyr ganske enkelt det tekniske integrasjonslaget som gjør det enklere å jobbe med DPD Eesti og andre transportører gjennom ett enhetlig API.

Cargoson opererer med en transparent månedlig abonnementsmodell uten gebyrer per forsendelse eller provisjoner, noensinne. Planen din inkluderer API-tilgang, dokumentasjon, støtte og automatiske oppdateringer når transportører endrer systemene sine. Du betaler DPD Eesti direkte for frakt til dine forhandlede priser. Ingen skjulte kostnader, ingen overraskelser.

Absolutt! Det er hovedfordelen med å bruke Cargoson. Når du integrerer vårt API, kan du jobbe med DPD Eesti og 2000+ andre transportører ved å bruke samme endepunkter, autentisering og dataformater. Legg til nye transportører uten å skrive ny integrasjonskode, bare aktiver dem i Cargoson-dashbordet ditt.

Ja! Vi integrerer hvilken som helst transportør du trenger uten ekstra kostnad. Dette er inkludert i Cargoson-abonnementet ditt. Bare introduser oss for transportørkontaktene dine, så håndterer vi den tekniske integrasjonen. Nye integrasjoner legges til daglig basert på kundeforespørsler.

Ja, vi kan sette opp webhooks for å varsle systemet ditt basert på hendelser og triggere i Cargoson, som forsendelsesstatusoppdateringer, bookingbekreftelser eller endringer i forsendelsene dine. Kontakt supportteamet vårt eller book en demo for å diskutere dine webhook-krav og oppsett.

Cargoson kan være overkill hvis du er et lite selskap som sender bare noen få ganger per måned med én enkelt transportør. Du kan sannsynligvis administrere disse forsendelsene fint uten et TMS. Vi er heller ikke riktig valg hvis du er en transportør eller speditør. Cargoson er bygget spesifikt for vareeiere (BCO-er) som produsenter og distributører som eier varene som sendes. Hvis du leter etter et TMS for å administrere din spedisjonsbedrift eller transportøroperasjoner, er vi ikke designet for det bruksområdet.

Vårt API returnerer klare feilmeldinger med spesifikke feilkoder og beskrivelser. Vanlige problemer er dokumentert med løsninger i utviklerdokumentasjonen vår. Hvis du står fast, kan supportteamet vårt hjelpe med å feilsøke integrasjonsproblemer.

Vi implementerer rimelige rategrenser for å sikre systemstabilitet for alle kunder. Det er både langtidsrategrenser og burst-rategrenser, med verdier som bør være mer enn nok for de fleste virksomheter. Hvis du trenger høyere grenser for bedriftsskala-operasjoner, kontakt oss for å diskutere tilpassede rategrenser for kontoen din.

Begynn å bruke DPD Eesti API

Få dine API-legitimasjoner for å starte integrasjonen

Få din API-nøkkel