Dinaro Grupp OÜ API dokumentacija

Integruota REST API

Išsami API dokumentacija Dinaro Grupp OÜ siuntimo integracijai. Pasiekite užsakymus, krovinių kainas, etikečių generavimą ir sekimą per Cargoson vieningą transporto valdymo API.

Gaukite savo API raktą

Dinaro Grupp OÜ API apžvalga

Ši API suteikia programinę prieigą prie Dinaro Grupp OÜ siuntimo paslaugų per Cargoson vieningą transporto valdymo platformą. Integruokite Dinaro Grupp OÜ galimybes, įskaitant siuntų užsakymą, sekimą, kainų pasiūlymus ir etikečių generavimą į savo programas.

API galimybės

  • Kurkite ir valdykite Dinaro Grupp OÜ siuntų užsakymus
  • Siuntų sekimas ir būsenos atnaujinimai
  • Gaukite krovinių kainų pasiūlymus ir pristatymo laikus
  • Generuokite siuntimo etiketes keliais formatais (PDF, PNG, ZPL)
  • Kurkite grąžinimo etiketes atvirkštinei logistikai
  • Ieškokite siuntų automatų ir paėmimo punktų vietų
  • Peržiūrėkite prieinamas vežėjo paslaugas
  • Automatizuoti kurjerių paėmimo užklausos

Pagrindinis URL ir autentifikacija

Pagrindinis URL

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

Autentifikacija

Visos užklausos turi turėti jūsų API raktą ir teisingą Accept antraštę:

Authorization: Bearer JŪSŲ_API_RAKTAS
Accept: application/vnd.api.v1

Dinaro Grupp OÜ užsakymų API

Cargoson automatizavimas
Cargoson patobulinimas:

Dinaro Grupp OÜ neteikia užsakymų API. Cargoson automatiškai siunčia užsakymų patvirtinimus el. paštu jūsų vardu, o jūs vis tiek naudojate tą pačią vieningą API sąsają.

Kurkite Dinaro Grupp OÜ siuntas ir gaukite siuntimo etiketes naudodami Queries galutinį tašką. Užsakymai siunčiami į vežėjo sistemą realiuoju laiku ir etiketės generuojamos iš karto.

Užklausa vs tiesioginis užsakymas

Queries galutinis taškas palaiko du užsakymo metodus:

  • Užklausos režimas - Sukurkite transporto užklausą nenurodydami vežėjo (dar). Tai leidžia jums rankiniu būdu palyginti vežėjų kainas ir pristatymo laikus, prašyti naujų spot kainų, atlikti pakeitimus/atnaujinimus siuntai ir perduoti vežėjo pasirinkimą kitiems, prieš galutinį vežėjo pasirinkimą Cargoson.
  • Tiesioginis užsakymas - Nurodykite vežėjo paslaugos ID (iš Rate arba Services API), kad užsakytumėte tiesiogiai su Dinaro Grupp OÜ. Tai užtikrina, kad jūsų siunta naudoja tiksliai jūsų pasirinktą paslaugą.

Norėdami užsakyti tiesiogiai su Dinaro Grupp OÜ, visada nurodykite direct_booking_service_id.

POST /queries

Sukurti siuntų užklausą arba tiesioginį užsakymą Dinaro Grupp OÜ. Įtraukite direct_booking_service_id, kad sukurtumėte nedelsiantį užsakymą.

Request Parameters

collection_date string required

Paėmimo data MMMM-MM-DD formatu

collection_country string required

Paėmimo šalies kodas (ISO 3166-1 alpha-2)

collection_postcode string required

Paėmimo pašto kodas

collection_address_row_1 string required

Paėmimo gatvės adresas

collection_city string required

Paėmimo miestas

collection_company_name string required

Siuntėjo įmonės pavadinimas

collection_contact_name string required

Siuntėjo kontaktinis asmuo

collection_contact_phone string required

Siuntėjo telefono numeris

delivery_country string required

Pristatymo šalies kodas

delivery_postcode string required

Pristatymo pašto kodas

delivery_address_row_1 string required

Pristatymo gatvės adresas

delivery_city string required

Pristatymo miestas

delivery_company_name string required

Gavėjo įmonės pavadinimas

delivery_contact_name string required

Gavėjo kontaktinis asmuo

delivery_contact_phone string required

Gavėjo telefono numeris

rows_attributes array required

Paketų/padėklų masyvas su kiekiu, pakuotės tipu, svoriu ir aprašymu

options[direct_booking_service_id] integer

Dinaro Grupp OÜ paslaugos ID tiesioginiam užsakymui

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

Etikečių generavimas

Dinaro Grupp OÜ siuntimo etiketės automatiškai generuojamos, kai sukuriate užsakymą. Etiketės prieinamos keliais formatais, kad palaikytų skirtingus spausdintuvų tipus.

Palaikomi etikečių formatai

a4 - A4 PDF formatas darbalaukio spausdintuvams (4 etiketės puslapyje)
label_printer - 4x6in (~10x15cm) PDF formatas terminiams spausdintuvams

Etiketės įtrauktos į užsakymo atsakymą per label_url lauką. Atsisiųskite ir išspausdinkite etiketę iš pateikto URL po užsakymo.

Dinaro Grupp OÜ kainų API (krovinių kainodara)

Cargoson sistema
Cargoson patobulinimas:

Dinaro Grupp OÜ neteikia natūralios kainų API. Cargoson krovinių kainų sistema apskaičiuoja kainas naudodama jūsų įkeltus kainų susitarimus, suteikdama jums tą pačią API patirtį kaip vežėjai su natūraliomis kainų API. Galite įkelti vežėjų kainas bet kokiu formatu (Excel, PDF, net ranka rašytus kainoraščius) ir mes juos skaitmeninsime.

Gaukite realaus laiko Dinaro Grupp OÜ krovinių kainas prieš užsakydami. Rate API grąžina prieinamas paslaugas, kainas ir numatomas pristatymo datas.

POST /freightPrices/list

Gauti krovinių kainų pasiūlymus iš Dinaro Grupp OÜ ir kitų aktyvuotų vežėjų jūsų paskyroje.

Request Parameters

collection_date string required

Paėmimo data MMMM-MM-DD formatu

collection_country string required

Paėmimo šalies kodas (ISO 3166-1 alpha-2)

collection_postcode string required

Paėmimo pašto kodas

delivery_country string required

Pristatymo šalies kodas

delivery_postcode string required

Pristatymo pašto kodas

rows_attributes array required

Paketų/padėklų masyvas su kiekiu, pakuotės tipu, svoriu ir aprašymu

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": "Dinaro Grupp OÜ",
        "reg_no": "11226569",
        "id": 1821,
        "service": "Main",
        "service_id": 85,
        "price": "19.13",
        "unit": "payable_weight",
        "type": "price_list"
      },
      {
        "carrier": "Dinaro Grupp OÜ",
        "reg_no": "11226569",
        "id": 1821,
        "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"
      }
    ]
  }
}

Dinaro Grupp OÜ sekimo API

Cargoson automatizavimas
Cargoson patobulinimas:

Dinaro Grupp OÜ neteikia sekimo įvykių per API. Cargoson teikia sekimo portalą, kur vežėjas gali rankiniu būdu atnaujinti siuntų būseną, suteikdamas jums ir jūsų klientams nuoseklią sekimo patirtį.

Sekite Dinaro Grupp OÜ siuntas naudodami Cargoson nuorodos numerį. Gaukite dabartinę būseną, vietos atnaujinimus ir numatomą pristatymo laiką.

GET /bookings/{reference}

Gauti sekimo informaciją apie Dinaro Grupp OÜ siuntą naudojant Cargoson užsakymo nuorodą.

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

Dinaro Grupp OÜ grąžinimo etikečių API

Veikia su Cargoson
Cargoson patobulinimas:

Dinaro Grupp OÜ natūraliai nepalaiko grąžinimo etikečių. Cargoson generuoja grąžinimo etiketes ir valdo grąžinimo logistikos procesą per mūsų platformą.

Generuokite grąžinimo siuntimo etiketes Dinaro Grupp OÜ siuntoms. Grąžinimo etiketės leidžia klientams siųsti prekes atgal naudojant iš anksto apmokėtą siuntimą.

POST /bookings/{reference}/return_labels

Sukurti grąžinimo etiketę esamai Dinaro Grupp OÜ siuntai.

Request Parameters

label_format string

Etiketės formatas: a4 arba label_printer (numatytasis: 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"
}

Grąžinimo etikečių funkcijos

  • Iš anksto apmokėtos grąžinimo siuntimo etiketės
  • Tos pačios formato parinktys kaip ir išsiunčiamoms etiketėms (A4, terminis)
  • Atskira sekimo nuoroda grąžinimams
  • Sklandus integravimas su Dinaro Grupp OÜ grąžinimo paslaugomis

Dinaro Grupp OÜ kurjerių užklausos

Cargoson automatizavimas

Cargoson automatizuoja kurjerių paėmimo užklausas Dinaro Grupp OÜ siuntoms, todėl tai vienas mažiau užduotis, apie kurią reikia galvoti.

Kaip Cargoson tvarko kurjerių užklausas

Daugelis siuntimo vežėjų reikalauja, kad sukurtumėte etiketes atskirai, o tada rankiniu būdu užsakytumėte kurjerio paėmimą. Kiti neturi atskiros etikečių ir kurjerio iškvietimo sistemos, ir kiekviena siunta yra atskiras, savarankiškas užsakymas. Mes tikime, kad turėtų būti vienas vežėjų API standartas, tačiau šiuo metu kiekvienas vežėjas kuria savo unikalią sistemą, todėl jų naudotojams sunku prisiminti kiekvieno ypatumus ir sudėtingumą. Cargoson supaprastina jūsų kurjerių iškvietimus traktuodamas kiekvieną siuntą holistiškai: kurjerių užklausos automatiškai valdomos kaip užsakymo proceso dalis.

Išmanus paėmimo optimizavimas

Cargoson optimizuoja kurjerių iškvietimus, kad sumažintų išlaidas ir pagerintų efektyvumą.

  • 1. Partijos konsolidavimas - Kelios siuntos iš tos pačios vietos sugrupuojamos į vieną paėmimo užklausą
  • 2. Vežėjui specifinis tvarkymas - Kai kurie vežėjai įtraukia paėmimą į užsakymą, kiti reikalauja atskirų užklausų. Cargoson automatiškai tvarko abu variantus už jus
  • 3. Reguliarūs paėmimo grafikai - Sukonfigūruokite iš anksto suplanuotus paėmimus konkrečiais intervalais (pvz., kasdien į pagrindinį sandėlį 15 val.) ir Cargoson visiškai praleis atskirus kurjerių iškvietimus

Privalumai

  • Nereikia sekti, kurie vežėjai reikalauja atskirų kurjerių užklausų
  • Automatinis optimizavimas užkerta kelią nereikalingiems paėmimo iškvietimams
  • Reguliarių paėmimo grafikų palaikymas
  • Supaprastintas siuntimo darbo srautas - tiesiog sukurkite užsakymą

Konfigūracija

Kurjerių paėmimo automatizavimas pagal numatytuosius nustatymus įjungtas visoms Dinaro Grupp OÜ siuntoms. Norėdami sukonfigūruoti reguliarius paėmimo grafikus arba pasirinktines paėmimo optimizavimo taisykles, susisiekite [email protected].

Dinaro Grupp OÜ paslaugų API

Cargoson sistema
Cargoson patobulinimas:

Paslaugų API yra Cargoson teikiama funkcija, kuri grąžina vieningą visų prieinamų paslaugų sąrašą iš Dinaro Grupp OÜ ir kitų vežėjų jūsų tinkle. Tai leidžia dinamiškai rodyti siuntimo parinktis savo klientams be paslaugų ID įkodavimo.

Gaukite prieinamų Dinaro Grupp OÜ siuntimo paslaugų sąrašą. Naudokite paslaugų ID atliekant tiesioginius užsakymus, kad užtikrintumėte, jog gausite tiksliai norimą paslaugą.

GET /services/list

Grąžinti jūsų įmonės paskyroje prieinamų Dinaro Grupp OÜ paslaugų sąrašą.

Example Response

{
  "services": [
    {
      "carrier": {
        "id": 1821,
        "name": "Dinaro Grupp OÜ",
        "short_name": "Dinaro Grupp OÜ",
        "reg_no": "11226569"
      },
      "id": 85,
      "name": "Main",
      "service_type": "road_freight"
    },
    {
      "carrier": {
        "id": 1821,
        "name": "Dinaro Grupp OÜ",
        "short_name": "Dinaro Grupp OÜ",
        "reg_no": "11226569"
      },
      "id": 123,
      "name": "Express Service",
      "service_type": "express"
    }
  ]
}

Paslaugų ID naudojimas

Šio galutinio taško paslaugų ID gali būti naudojami su direct_booking_service_id parametru kuriant užsakymus, kad pasirinktumėte tinkamą paslaugą ir išsiųstumėte siuntą į Dinaro Grupp OÜ sistemą.

Išsamūs kodo pavyzdžiai

Žemiau pateikiami išsamūs veikiantys pavyzdžiai, rodantys visą darbo eigą: gaukite kainas, pasirinkite paslaugą, užsakykite siuntą ir ištraukite sekimo informaciją.

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

# Step 1: Get freight prices for Dinaro Grupp OÜ
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 bookToDinaroGruppOÜ() {
  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
bookToDinaroGruppOÜ();
import requests

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

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

define('CARRIER_SERVICE_ID', 85);

function bookToDinaroGruppO($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
bookToDinaroGruppO($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_dinaro_grupp_o_
  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_dinaro_grupp_o_

Kodėl naudoti Cargoson API Dinaro Grupp OÜ integracijai

Tiesioginis integravimas su Dinaro Grupp OÜ natūralia API reiškia kovojimą su vežėjui specifine dokumentacija, skirtingų duomenų formatų tvarkymą ir atskiro kodo palaikymą kiekvienam teikėjui. Cargoson siūlo vieną vieningą RESTful API, kuri palaiko Dinaro Grupp OÜ ir 2000+ vežėjų Europos ir Šiaurės Amerikos rinkose, o naujos integracijos pridedamos kas savaitę. Mes sumažiname kūrimo laiką nuo mėnesių iki dienų, automatiškai tvarkome vežėjų atnaujinimus ir valdome regioninius išimtis. Su Cargoson jūs sutelkiate dėmesį į savo verslo augimą, o ne į vežėjų techninių sudėtingumų valdymą.

Dinaro Grupp OÜ integravimo per Cargoson API privalumai

Viena API visiems vežėjams

Pakeiskite dešimtis atskirų vežėjų integracijų vienu ryšiu su Dinaro Grupp OÜ ir 2000+ kitų teikėjų per Cargoson API. Nebereikia palaikyti kelių autentifikavimo sistemų, tvarkyti skirtingų duomenų formatų ar atnaujinti kodo, kai vežėjai keičia savo galutinius taškus.

Aiški dokumentacija ir palaikymas

Pasiekite aiškią API dokumentaciją su veikiančiais kodo pavyzdžiais, išsamiais parametrų aprašymais ir aiškiai apibrėžtais galutiniais taškais. Mūsų palaikymo komanda išmano logistikos pramonę ir gali padėti greitai išspręsti integracijos iššūkius.

Kodo pavyzdžiai keliomis kalbomis

Pradėkite iš karto su paruoštais naudoti kodo pavyzdžiais cURL, JavaScript, Python, PHP ir Ruby. Kopijuokite, įklijuokite ir pritaikykite juos savo technologijoms, nereikia išsiaiškinti autentifikavimo, užklausos formatavimo ar klaidų tvarkymo nuo nulio.

Tikras palaikymas iš logistikos ekspertų

Gaukite pagalbą iš žmonių, kurie supranta siuntimą, o ne tik API. Nesvarbu, ar sprendžiate integracijos problemą, ar reikia patarimo, kaip geriausia tvarkyti tarptautines siuntas, mūsų komanda yra čia, kad padėtų.

Pažangiausia pasaulyje krovinių kainų sistema

Cargoson krovinių kainų API toli prašoka paprastus kainų užklausas. Mūsų sistema gali skaityti, analizuoti ir skaitmeninti bet kokį vežėjo kainoraštį nepriklausomai nuo formato ar struktūros, todėl tai galingiausia krovinių kainų valdymo sprendimas logistikos pramonėje.

Universalus formatų palaikymas

Mūsų krovinių kainų sistema tvarko bet kokį formatą: struktūrizuotus Excel failus, sudėtingus PDF, laisvą tekstą ar net ranka rašytus kainoraščius. Įkelkite savo vežėjų sutartis bet kokiu formatu, ir mūsų krovinių kainų sistema automatiškai išanalizuos kainų taisykles, papildomus mokesčius ir sąlygas.

Tiesioginė vežėjo API integracija

Vežėjams su šiuolaikinėmis sistemomis (paprastai pasauliniai siuntų vežėjai ir technologijų pažangūs krovinių įmonės) mes traukiame kainas tiesiogiai iš jų API realiuoju laiku. Tai užtikrina, kad visada gausite naujausias kainas be rankinių atnaujinimų.

Viešos internetinės kainos

Dar neturite sutarties su vežėju? Nėra problemos. Cargoson gali gauti viešas internetines kainas iš vežėjų, leidžiančias jums palyginti variantus net prieš sudarant oficialius susitarimus.

Spot kainų užklausos

Sudėtingoms siuntoms ar specialiems atvejams prašykite spot kainų, kai vežėjai peržiūri jūsų konkrečius reikalavimus ir pateikia individualų pasiūlymą. Viskas valdoma per tą pačią vieningą API.

Dinaro Grupp OÜ siuntimo API: Supaprastinta logistikos automatizacija

Automatizuokite savo įvykdymo procesą integruodami Cargoson siuntimo API su Dinaro Grupp OÜ ir 2000+ vežėjų visame pasaulyje. Kurkite siuntimo etiketes, užsakykite paėmimus ir valdykite visus savo vežėjus iš vienos platformos, tuo pačiu išlaikydami savo derėtas kainas su kiekvienu teikėju.

Automatizuotas etikečių generavimas

Generuokite vežėjo patvirtintas siuntimo etiketes viena API užklausa. Kelių etikečių formatų palaikymas (A4, terminis spausdintuvas) ir automatinė muitinės dokumentacija tarptautinėms siuntoms reiškia mažiau rankinio darbo ir mažiau siuntimo klaidų.

Realaus laiko kainų palyginimas

Palyginkite realaus laiko kainas tarp Dinaro Grupp OÜ ir kitų jūsų aktyvuotų vežėjų, kad pasirinktumėte geriausią variantą pagal kainą, greitį ir paslaugų lygį.

Išlaikykite savo derėtas kainas

Prijunkite savo esamą Dinaro Grupp OÜ paskyrą, kad išlaikytumėte savo derėtas siuntimo kainas. Cargoson tiesiog suteikia techninę integraciją: jūs išlaikote savo tiesioginius vežėjų santykius ir individualius kainų susitarimus.

Įmonės lygio saugumas Dinaro Grupp OÜ API integracijai

Cargoson API infrastruktūra atitinka Europos atitikties standartus, užtikrinančius saugią, auditui paruoštą Dinaro Grupp OÜ integraciją jūsų verslui:

  • BDAR atitinkantis duomenų tvarkymas ir saugojimas visoje Europoje
  • ISO 27001 sertifikuotas informacijos saugumo valdymas
  • Visapusiškas šifravimas visai API komunikacijai

Pasiruošę integruoti Dinaro Grupp OÜ siuntimą į savo platformą?

Užsisakykite demonstraciją, kad pamatytumėte, kaip Cargoson vieninga API gali supaprastinti jūsų logistikos operacijas

Užsisakyti demonstraciją

Dažniausiai užduodami klausimai

Cargoson yra transporto valdymo sistema (TMS) Europos ir Šiaurės Amerikos gamintojams. Mūsų pagrindinė vizija yra paprastumas: integruoti bet kokius ir visus vežėjus bei krovinių rūšis (kelių, siuntų, oro, jūrų, geležinkelių) į vieną langą ir vieną API. Nesvarbu, ar siunčiate padėklus per Europą, ar konteinerius per vandenynus, valdykite viską iš vienos platformos.

Pradėti yra paprasta. Pirma, užsiregistruokite Cargoson paskyrą ir gaukite savo API raktą. Tada prijunkite savo Dinaro Grupp OÜ paskyrą Cargoson valdymo skydelyje. Kai tai padaryta, galite pradėti teikti API užklausas naudodami mūsų dokumentaciją ir kodo pavyzdžius. Visa sąranka paprastai užtrunka mažiau nei valandą.

Taip, jums reikės savo Dinaro Grupp OÜ paskyros, kad naudotumėte Dinaro Grupp OÜ paslaugas per Cargoson. Tai užtikrina, kad išlaikytumėte savo derėtas kainas ir palaikytumėte savo tiesioginį santykį su Dinaro Grupp OÜ. Cargoson tiesiog suteikia techninį integracijos sluoksnį, kuris palengvina darbą su Dinaro Grupp OÜ ir kitais vežėjais per vieną vieningą API.

Cargoson veikia pagal skaidrų mėnesinės prenumeratos modelį be mokesčių už siuntą ar komisinių, niekada. Jūsų planas apima API prieigą, dokumentaciją, palaikymą ir automatinius atnaujinimus, kai vežėjai keičia savo sistemas. Jūs mokate Dinaro Grupp OÜ tiesiogiai už siuntimą savo derėtomis kainomis. Jokių paslėptų išlaidų, jokių staigmenų.

Absoliučiai! Tai yra pagrindinis Cargoson naudojimo privalumas. Kai integruojate mūsų API, galite dirbti su Dinaro Grupp OÜ ir 2000+ kitų vežėjų naudodami tuos pačius galutinius taškus, autentifikaciją ir duomenų formatus. Pridėkite naujus vežėjus nerašydami naujo integracijos kodo, tiesiog aktyvuokite juos savo Cargoson valdymo skydelyje.

Taip! Mes integruojame bet kokį jums reikalingą vežėją be papildomų išlaidų. Tai įtraukta į jūsų Cargoson prenumeratą. Tiesiog supažindinkite mus su savo vežėjų kontaktais, ir mes tvarkysime techninę integraciją. Naujos integracijos pridedamos kasdien pagal klientų užklausas.

Taip, galime nustatyti webhook'us, kad praneštume jūsų sistemai apie įvykius ir trigerius Cargoson, tokius kaip siuntų būsenos atnaujinimai, užsakymų patvirtinimai ar jūsų siuntų pakeitimai. Susisiekite su mūsų palaikymo komanda arba užsisakykite demonstraciją, kad aptartumėte savo webhook reikalavimus ir sąranką.

Cargoson gali būti per daug, jei esate maža įmonė, siunčianti tik kelis kartus per mėnesį su vienu vežėju. Tikriausiai galite gerai valdyti tas siuntas be transporto valdymo sistemos. Mes taip pat netinkame, jei esate vežėjas ar krovinių ekspeditorius. Cargoson sukurtas specialiai prekių savininkams (BCO) kaip gamintojams ir platintojams, kurie valdo siunčiamas prekes. Jei ieškote transporto valdymo sistemos savo ekspedijavimo verslui ar vežėjo operacijoms valdyti, mes nesame sukurti tam naudojimo atvejui.

Mūsų API grąžina aiškius klaidų pranešimus su konkrečiais klaidų kodais ir aprašymais. Įprastos problemos dokumentuotos su sprendimais mūsų kūrėjų dokumentacijoje. Jei įstrigsite, mūsų palaikymo komanda gali padėti spręsti integracijos problemas.

Mes įgyvendiname protingus limitus, kad užtikrintume sistemos stabilumą visiems klientams. Yra tiek ilgalaikiai limitai, tiek burst limitai, kurių vertės turėtų būti daugiau nei pakankamos daugumai įmonių. Jei jums reikia didesnių limitų įmonės masto operacijoms, susisiekite su mumis, kad aptartumėte individualius limitus jūsų paskyrai.

Pradėkite naudoti Dinaro Grupp OÜ API

Gaukite savo API kredencialus, kad pradėtumėte integraciją

Gaukite savo API raktą