BORA SPED SIA API dokumentacija

Integrirano REST API

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

Nabavite svoj API ključ

BORA SPED SIA API pregled

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

API mogućnosti

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

Osnovni URL i autentifikacija

Osnovni URL

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

Autentifikacija

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

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

BORA SPED SIA API za rezervacije

Cargoson automatizacija
Cargoson poboljšanje:

BORA SPED SIA ne pruža API za rezervacije. Cargoson automatski šalje potvrde rezervacija putem e-pošte u vaše ime, dok i dalje koristite isto jedinstveno API sučelje.

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

Upit vs izravna rezervacija

Queries endpoint podržava dvije metode rezervacije:

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

Za izravnu rezervaciju s BORA SPED SIA, uvijek definirajte direct_booking_service_id.

POST /queries

Kreirajte upit za pošiljku ili izravnu rezervaciju za BORA SPED SIA. Uključite direct_booking_service_id za kreiranje trenutne rezervacije.

Request Parameters

collection_date string required

Datum preuzimanja u formatu GGGG-MM-DD

collection_country string required

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

collection_postcode string required

Poštanski broj preuzimanja

collection_address_row_1 string required

Ulična adresa preuzimanja

collection_city string required

Grad preuzimanja

collection_company_name string required

Naziv tvrtke pošiljatelja

collection_contact_name string required

Kontakt osoba pošiljatelja

collection_contact_phone string required

Telefonski broj pošiljatelja

delivery_country string required

Kod zemlje isporuke

delivery_postcode string required

Poštanski broj isporuke

delivery_address_row_1 string required

Ulična adresa isporuke

delivery_city string required

Grad isporuke

delivery_company_name string required

Naziv tvrtke primatelja

delivery_contact_name string required

Kontakt osoba primatelja

delivery_contact_phone string required

Telefonski broj primatelja

rows_attributes array required

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

options[direct_booking_service_id] integer

BORA SPED SIA ID usluge za izravnu rezervaciju

Example: Direct Booking Request

{
  "collection_date": "2026-02-15",
  "collection_country": "DE",
  "collection_postcode": "10115",
  "collection_address_row_1": "Hauptstraße 123",
  "collection_city": "Berlin",
  "collection_company_name": "Demo GmbH",
  "collection_contact_name": "Max Mustermann",
  "collection_contact_phone": "+4930123456",
  "delivery_country": "SE",
  "delivery_postcode": "11122",
  "delivery_address_row_1": "Drottninggatan 45",
  "delivery_city": "Stockholm",
  "delivery_company_name": "Demo Sweden AB",
  "delivery_contact_name": "Erik Andersson",
  "delivery_contact_phone": "+46812345678",
  "rows_attributes": [
    {
      "quantity": 1,
      "package_type": "EUR",
      "weight": 100.0,
      "description": "Goods on EUR pallet"
    }
  ],
  "options": {
    "direct_booking_service_id": 1234
  }
}

Example Response

{
  "id": 12345,
  "reference": "CG12345",
  "status": "booked",
  "latest_status": "confirmed",
  "tracking_reference": "ABC1234567890",
  "tracking_url": "https://tracking.carrier.com/ABC1234567890",
  "label_url": "https://www.cargoson.com/labels/abc123.pdf",
  "confirmed_at": "2026-02-15T10:30:00Z"
}

Generiranje naljepnica

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

Podržani formati naljepnica

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

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

BORA SPED SIA API za cijene (cijene prijevoza)

Cargoson sustav
Cargoson poboljšanje:

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

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

POST /freightPrices/list

Dobijte ponude cijena prijevoza od BORA SPED SIA i drugih aktiviranih prijevoznika na vašem računu.

Request Parameters

collection_date string required

Datum preuzimanja u formatu GGGG-MM-DD

collection_country string required

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

collection_postcode string required

Poštanski broj preuzimanja

delivery_country string required

Kod zemlje isporuke

delivery_postcode string required

Poštanski broj isporuke

rows_attributes array required

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

Example Request

{
  "collection_date": "2026-02-15",
  "collection_postcode": "10115",
  "collection_country": "DE",
  "collection_with_tail_lift": true,
  "collection_prenotification": true,
  "delivery_postcode": "11122",
  "delivery_country": "SE",
  "delivery_with_tail_lift": true,
  "delivery_prenotification": true,
  "delivery_return_document": true,
  "delivery_to_private_person": true,
  "frigo": true,
  "adr": false,
  "rows_attributes": [
    {
      "quantity": 1,
      "package_type": "EUR",
      "weight": 100.0,
      "description": "Goods on EUR pallet"
    },
    {
      "quantity": 2,
      "package_type": "FIN",
      "weight": 300.0,
      "description": "Goods on two FIN pallets"
    }
  ],
  "request_external_partners": false
}

Example Response

{
  "status": 200,
  "object": {
    "prices": [
      {
        "carrier": "BORA SPED SIA",
        "reg_no": "40103255776",
        "id": 2159,
        "service": "Main",
        "service_id": 85,
        "price": "19.13",
        "unit": "payable_weight",
        "type": "price_list"
      },
      {
        "carrier": "BORA SPED SIA",
        "reg_no": "40103255776",
        "id": 2159,
        "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"
      }
    ]
  }
}

BORA SPED SIA API za praćenje

Cargoson automatizacija
Cargoson poboljšanje:

BORA SPED SIA ne pruža događaje praćenja putem API-ja. Cargoson pruža portal za praćenje gdje prijevoznik može ručno ažurirati status pošiljke, pružajući vam i vašim kupcima dosljednu iskustvo praćenja.

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

GET /bookings/{reference}

Preuzmite detalje praćenja za BORA SPED SIA pošiljku koristeći Cargoson referentni broj rezervacije.

Example Response

{
  "reference": "CG12345",
  "status": "in_transit",
  "latest_status": "collected",
  "tracking_reference": "ABC1234567890",
  "tracking_url": "https://tracking.carrier.com/ABC1234567890",
  "confirmed_at": "2026-02-15T10:30:00Z",
  "collected_at": "2026-02-15T14:20:00Z",
  "estimated_delivery": "2026-02-18T16:00:00Z"
}

BORA SPED SIA API za naljepnice za povrat

Pokreće Cargoson
Cargoson poboljšanje:

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

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

POST /bookings/{reference}/return_labels

Kreirajte naljepnicu za povrat za postojeću BORA SPED SIA pošiljku.

Request Parameters

label_format string

Format naljepnice: a4 ili label_printer (zadano: a4)

Example Request

{
  "label_format": "a4"
}

Example Response

{
  "return_label_url": "https://www.cargoson.com/labels/return_abc123.pdf",
  "tracking_reference": "RETURN9876543210",
  "tracking_url": "https://tracking.carrier.com/RETURN9876543210"
}

Značajke naljepnica za povrat

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

BORA SPED SIA zahtjevi za kurirom

Cargoson automatizacija

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

Kako Cargoson upravlja zahtjevima za kurirom

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

Pametna optimizacija preuzimanja

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

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

Prednosti

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

Konfiguracija

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

BORA SPED SIA API za usluge

Cargoson sustav
Cargoson poboljšanje:

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

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

GET /services/list

Vraća popis BORA SPED SIA usluga dostupnih na vašem računu tvrtke.

Example Response

{
  "services": [
    {
      "carrier": {
        "id": 2159,
        "name": "BORA SPED SIA",
        "short_name": "BORA SPED SIA",
        "reg_no": "40103255776"
      },
      "id": 85,
      "name": "Main",
      "service_type": "road_freight"
    },
    {
      "carrier": {
        "id": 2159,
        "name": "BORA SPED SIA",
        "short_name": "BORA SPED SIA",
        "reg_no": "40103255776"
      },
      "id": 123,
      "name": "Express Service",
      "service_type": "express"
    }
  ]
}

Korištenje ID-ova usluga

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

Potpuni primjeri koda

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

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

# Step 1: Get freight prices for BORA SPED SIA
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 bookToBORASPEDSIA() {
  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
bookToBORASPEDSIA();
import requests

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

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

define('CARRIER_SERVICE_ID', 85);

function bookToBORASPEDSIA($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
bookToBORASPEDSIA($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_bora_sped_sia
  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_bora_sped_sia

Zašto koristiti Cargoson API za BORA SPED SIA integraciju

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

Prednosti integracije BORA SPED SIA putem Cargoson API-ja

Jedan API za sve prijevoznike

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

Jasna dokumentacija i podrška

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

Primjeri koda na više jezika

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

Prava podrška od logističkih stručnjaka

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

Najnapredniji sustav za cijene prijevoza na svijetu

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

Univerzalna podrška za formate

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

Izravna integracija API-ja prijevoznika

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

Javne online cijene

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

Zahtjevi za spot cijene

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

BORA SPED SIA API za otpremu: Pojednostavljena automatizacija logistike

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

Automatizirano generiranje naljepnica

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

Usporedba cijena u stvarnom vremenu

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

Zadržite svoje dogovorene cijene

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

Sigurnost na razini poduzeća za BORA SPED SIA API integraciju

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

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

Spremni integrirati BORA SPED SIA otpremu u svoju platformu?

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

Rezerviraj demo

Često postavljana pitanja

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

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

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

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

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

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

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

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

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

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

Počnite koristiti BORA SPED SIA API

Nabavite svoje API vjerodajnice za početak integracije

Nabavite svoj API ključ