Документація API Backloads Solutions SIA

Інтегровано REST API

Повний довідник API для інтеграції відправлень Backloads Solutions SIA. Доступ до бронювання, тарифів, генерації етикеток та відстеження через уніфікований API управління транспортом Cargoson.

Отримати API ключ

Огляд API Backloads Solutions SIA

Цей API надає програмний доступ до послуг відправлення Backloads Solutions SIA через уніфіковану платформу управління транспортом Cargoson. Інтегруйте можливості Backloads Solutions SIA, включаючи бронювання відправлень, відстеження, тарифні пропозиції та генерацію етикеток у ваші додатки.

Можливості API

  • Створення та управління бронюваннями відправлень Backloads Solutions SIA
  • Відстеження відправлень та оновлення статусу
  • Отримання тарифних пропозицій та часу доставки
  • Генерація етикеток відправлення в кількох форматах (PDF, PNG, ZPL)
  • Створення етикеток повернення для зворотної логістики
  • Запит розташування поштоматів та пунктів видачі
  • Перелік доступних послуг перевізника
  • Автоматизовані запити на забір кур'єром

Базова URL-адреса та автентифікація

Базова URL-адреса

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

Автентифікація

Усі запити повинні включати ваш API ключ та правильний заголовок Accept:

Authorization: Bearer ВАШ_API_КЛЮЧ
Accept: application/vnd.api.v1

API бронювання Backloads Solutions SIA

Автоматизація Cargoson
Покращення Cargoson:

Backloads Solutions SIA не надає API бронювання. Cargoson автоматично надсилає підтвердження бронювання електронною поштою від вашого імені, поки ви все ще використовуєте той самий уніфікований інтерфейс API.

Створюйте відправлення Backloads Solutions SIA та отримуйте етикетки відправлення, використовуючи ендпоінт Queries. Бронювання надсилаються в систему перевізника в реальному часі, а етикетки генеруються миттєво.

Запит vs пряме бронювання

Ендпоінт Queries підтримує два методи бронювання:

  • Режим запиту - Створіть запит на транспортування без вказівки перевізника (поки що). Це дозволяє вам вручну порівняти ціни та час доставки перевізників, запитати нові spot-ціни, внести зміни/оновлення до відправлення та делегувати вибір перевізника іншим, перш ніж зробити остаточний вибір перевізника в Cargoson.
  • Пряме бронювання - Вкажіть ID послуги перевізника (з Rate або Services API), щоб забронювати безпосередньо з Backloads Solutions SIA. Це гарантує, що ваше відправлення використовує саме ту послугу, яку ви обрали.

Щоб забронювати безпосередньо з Backloads Solutions SIA, завжди вказуйте direct_booking_service_id.

POST /queries

Створити запит на відправлення або пряме бронювання для Backloads Solutions SIA. Включіть direct_booking_service_id для створення негайного бронювання.

Request Parameters

collection_date string required

Дата забору у форматі РРРР-ММ-ДД

collection_country string required

Код країни забору (ISO 3166-1 alpha-2)

collection_postcode string required

Поштовий індекс забору

collection_address_row_1 string required

Адреса вулиці забору

collection_city string required

Місто забору

collection_company_name string required

Назва компанії відправника

collection_contact_name string required

Контактна особа відправника

collection_contact_phone string required

Номер телефону відправника

delivery_country string required

Код країни доставки

delivery_postcode string required

Поштовий індекс доставки

delivery_address_row_1 string required

Адреса вулиці доставки

delivery_city string required

Місто доставки

delivery_company_name string required

Назва компанії одержувача

delivery_contact_name string required

Контактна особа одержувача

delivery_contact_phone string required

Номер телефону одержувача

rows_attributes array required

Масив упаковок/палет з кількістю, типом упаковки, вагою та описом

options[direct_booking_service_id] integer

ID послуги Backloads Solutions SIA для прямого бронювання

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

Генерація етикеток

Етикетки відправлення Backloads Solutions SIA автоматично генеруються при створенні бронювання. Етикетки доступні в кількох форматах для підтримки різних типів принтерів.

Підтримувані формати етикеток

a4 - формат PDF A4 для настільних принтерів (4 етикетки на сторінці)
label_printer - формат PDF 4x6 дюймів (~10x15 см) для термопринтерів

Етикетки включені у відповідь на бронювання через поле label_url. Завантажте та роздрукуйте етикетку за наданою URL-адресою після бронювання.

API тарифів Backloads Solutions SIA (ціноутворення вантажоперевезень)

Механізм Cargoson
Покращення Cargoson:

Backloads Solutions SIA не надає нативний API тарифів. Механізм тарифів вантажоперевезень Cargoson розраховує ціни, використовуючи ваші завантажені цінові угоди, надаючи вам той самий досвід API, що й перевізники з нативними API тарифів. Ви можете завантажувати тарифи перевізників у будь-якому форматі (Excel, PDF, навіть рукописні прайс-листи), і ми їх оцифруємо.

Отримуйте тарифи вантажоперевезень Backloads Solutions SIA в реальному часі перед бронюванням. Rate API повертає доступні послуги, ціни та орієнтовний час доставки.

POST /freightPrices/list

Отримати тарифні пропозиції від Backloads Solutions SIA та інших активованих перевізників на вашому обліковому записі.

Request Parameters

collection_date string required

Дата забору у форматі РРРР-ММ-ДД

collection_country string required

Код країни забору (ISO 3166-1 alpha-2)

collection_postcode string required

Поштовий індекс забору

delivery_country string required

Код країни доставки

delivery_postcode string required

Поштовий індекс доставки

rows_attributes array required

Масив упаковок/палет з кількістю, типом упаковки, вагою та описом

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": "Backloads Solutions SIA",
        "reg_no": "42103090782",
        "id": 2602,
        "service": "Main",
        "service_id": 85,
        "price": "19.13",
        "unit": "payable_weight",
        "type": "price_list"
      },
      {
        "carrier": "Backloads Solutions SIA",
        "reg_no": "42103090782",
        "id": 2602,
        "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"
      }
    ]
  }
}

API відстеження Backloads Solutions SIA

Автоматизація Cargoson
Покращення Cargoson:

Backloads Solutions SIA не надає події відстеження через API. Cargoson надає портал відстеження, де перевізник може вручну оновлювати статус відправлення, надаючи вам та вашим клієнтам послідовний досвід відстеження.

Відстежуйте відправлення Backloads Solutions SIA, використовуючи довідковий номер Cargoson. Отримуйте поточний статус, оновлення місцезнаходження та орієнтовний час доставки.

GET /bookings/{reference}

Отримати деталі відстеження для відправлення Backloads Solutions SIA, використовуючи довідковий номер бронювання Cargoson.

Example Response

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

API етикеток повернення Backloads Solutions SIA

На базі Cargoson
Покращення Cargoson:

Backloads Solutions SIA не підтримує етикетки повернення нативно. Cargoson генерує етикетки повернення та керує процесом зворотної логістики через нашу платформу.

Генеруйте етикетки повернення для відправлень Backloads Solutions SIA. Етикетки повернення дозволяють клієнтам повертати товари, використовуючи попередньо оплачену доставку.

POST /bookings/{reference}/return_labels

Створити етикетку повернення для існуючого відправлення Backloads Solutions SIA.

Request Parameters

label_format string

Формат етикетки: a4 або label_printer (за замовчуванням: 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"
}

Функції етикеток повернення

  • Попередньо оплачені етикетки повернення
  • Ті самі варіанти формату, що й для вихідних етикеток (A4, термопринтер)
  • Окремий довідковий номер відстеження для повернень
  • Безшовна інтеграція з послугами повернення Backloads Solutions SIA

Запити на кур'єра Backloads Solutions SIA

Автоматизація Cargoson

Cargoson автоматизує запити на забір кур'єром для відправлень Backloads Solutions SIA, що робить це одним завданням менше, про яке вам потрібно думати.

Як Cargoson обробляє запити на кур'єра

Багато перевізників вимагають створювати етикетки окремо, а потім вручну запитувати забір кур'єром. Інші не мають окремої системи етикеток плюс виклик кур'єра, і кожне відправлення є повним, окремим відправленням. Ми вважаємо, що має бути єдиний стандарт API перевізників, але наразі кожен перевізник створює свою унікальну систему, що ускладнює користувачам запам'ятовування особливостей та складнощів кожного. Cargoson спрощує ваші виклики кур'єра, розглядаючи кожне відправлення цілісно: запити на кур'єра автоматично керуються як частина процесу бронювання.

Розумна оптимізація забору

Cargoson оптимізує виклики кур'єра для зниження витрат та підвищення ефективності.

  • 1. Пакетна консолідація - Кілька відправлень з одного місця групуються в один запит на забір
  • 2. Обробка, специфічна для перевізника - Деякі перевізники включають забір у бронювання, інші вимагають окремих запитів. Cargoson автоматично обробляє обидва варіанти для вас
  • 3. Регулярні графіки забору - Налаштуйте попередньо заплановані забори в певні інтервали (наприклад, щодня на мій головний склад о 15:00), і Cargoson повністю пропустить окремі виклики кур'єра

Переваги

  • Не потрібно відстежувати, які перевізники вимагають окремих запитів на кур'єра
  • Автоматична оптимізація запобігає непотрібним викликам забору
  • Підтримка регулярних графіків забору
  • Спрощений робочий процес відправлення - просто створіть бронювання

Налаштування

Автоматизація забору кур'єром увімкнена за замовчуванням для всіх відправлень Backloads Solutions SIA. Щоб налаштувати регулярні графіки забору або спеціальні правила оптимізації забору, зв'яжіться з [email protected].

API послуг Backloads Solutions SIA

Механізм Cargoson
Покращення Cargoson:

API послуг - це функція, надана Cargoson, яка повертає уніфікований список усіх доступних послуг від Backloads Solutions SIA та інших перевізників у вашій мережі. Це дозволяє вам динамічно відображати варіанти відправлення вашим клієнтам без жорсткого кодування ID послуг.

Отримайте список доступних послуг відправлення Backloads Solutions SIA. Використовуйте ID послуг при прямому бронюванні, щоб переконатися, що ви отримуєте саме ту послугу, яку хочете.

GET /services/list

Повернути список послуг Backloads Solutions SIA, доступних на обліковому записі вашої компанії.

Example Response

{
  "services": [
    {
      "carrier": {
        "id": 2602,
        "name": "Backloads Solutions SIA",
        "short_name": "Backloads Solutions SIA",
        "reg_no": "42103090782"
      },
      "id": 85,
      "name": "Main",
      "service_type": "road_freight"
    },
    {
      "carrier": {
        "id": 2602,
        "name": "Backloads Solutions SIA",
        "short_name": "Backloads Solutions SIA",
        "reg_no": "42103090782"
      },
      "id": 123,
      "name": "Express Service",
      "service_type": "express"
    }
  ]
}

Використання ID послуг

ID послуг з цього ендпоінту можна використовувати з параметром direct_booking_service_id при створенні бронювань для вибору правильної послуги та надсилання відправлення в систему Backloads Solutions SIA.

Повні приклади коду

Нижче наведені повні робочі приклади, що показують повний робочий процес: отримання тарифів, вибір послуги, бронювання відправлення та отримання інформації про відстеження.

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

# Step 1: Get freight prices for Backloads Solutions 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 bookToBackloadsSolutionsSIA() {
  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
bookToBackloadsSolutionsSIA();
import requests

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

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

define('CARRIER_SERVICE_ID', 85);

function bookToBackloadsSolutionsSIA($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
bookToBackloadsSolutionsSIA($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_backloads_solutions_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_backloads_solutions_sia

Чому використовувати API Cargoson для інтеграції Backloads Solutions SIA

Інтеграція безпосередньо з нативним API Backloads Solutions SIA означає боротьбу з документацією, специфічною для перевізника, обробку унікальних форматів даних та підтримку окремого коду для кожного постачальника. Cargoson пропонує єдиний уніфікований RESTful API, який підтримує Backloads Solutions SIA та 2000+ перевізників на європейських та північноамериканських ринках, з новими інтеграціями, що додаються щотижня. Ми скорочуємо час розробки з місяців до днів, автоматично обробляємо оновлення перевізників та керуємо регіональними винятками. З Cargoson ви зосереджуєтесь на розвитку свого бізнесу замість управління технічними складнощами перевізників.

Переваги інтеграції Backloads Solutions SIA через API Cargoson

Один API для всіх перевізників

Замініть десятки окремих інтеграцій перевізників одним підключенням до Backloads Solutions SIA та 2000+ інших постачальників через API Cargoson. Більше не потрібно підтримувати кілька систем автентифікації, обробляти різні формати даних або оновлювати код, коли перевізники змінюють свої ендпоінти.

Чітка документація та підтримка

Доступ до зрозумілої документації API з робочими прикладами коду, детальними описами параметрів та чітко визначеними ендпоінтами. Наша команда підтримки знає логістичну галузь і може допомогти вам швидко вирішити проблеми інтеграції.

Приклади коду кількома мовами

Почніть негайно з готових до використання прикладів коду на cURL, JavaScript, Python, PHP та Ruby. Копіюйте, вставляйте та адаптуйте їх до свого стеку, не потрібно з нуля розбиратися з автентифікацією, форматуванням запитів або обробкою помилок.

Справжня підтримка від експертів з логістики

Отримайте допомогу від людей, які розуміють відправлення, а не лише API. Чи то ви усуваєте проблему інтеграції, чи потребуєте поради щодо найкращого способу обробки міжнародних відправлень, наша команда тут, щоб допомогти.

Найпередовіший у світі механізм ціноутворення вантажоперевезень

API ціноутворення вантажоперевезень Cargoson виходить далеко за межі простого пошуку тарифів. Наш механізм може читати, аналізувати та оцифровувати будь-який прайс-лист перевізника незалежно від формату чи структури, що робить його найпотужнішим рішенням для управління тарифами вантажоперевезень у логістичній галузі.

Універсальна підтримка форматів

Наш механізм ціноутворення вантажоперевезень обробляє будь-який формат: структуровані файли Excel, складні PDF, вільний текст або навіть рукописні прайс-листи. Завантажте свої контракти з перевізниками в будь-якому форматі, і наш механізм тарифів автоматично проаналізує правила ціноутворення, доплати та умови.

Пряма інтеграція API перевізника

Для перевізників з сучасними системами (зазвичай глобальні посилкові перевізники та технологічно просунуті вантажні компанії) ми отримуємо тарифи безпосередньо з їхніх API в реальному часі. Це гарантує, що ви завжди отримуєте найактуальніші ціни без ручних оновлень.

Публічні онлайн-ціни

Ще не маєте контракту з перевізником? Без проблем. Cargoson може отримувати публічні онлайн-ціни від перевізників, дозволяючи вам порівнювати варіанти навіть до встановлення офіційних угод.

Запити на spot-тарифи

Для складних відправлень або особливих випадків запитуйте spot-тарифи, де перевізники переглядають ваші конкретні вимоги та надають індивідуальну пропозицію. Все керується через той самий уніфікований API.

API відправлення Backloads Solutions SIA: Спрощена автоматизація логістики

Автоматизуйте свій процес виконання, інтегруючи API відправлення Cargoson з Backloads Solutions SIA та 2000+ перевізниками по всьому світу. Створюйте етикетки відправлення, бронюйте забори та керуйте всіма своїми перевізниками з однієї платформи, зберігаючи свої узгоджені тарифи з кожним постачальником.

Автоматична генерація етикеток

Генеруйте схвалені перевізником етикетки відправлення в одному запиті API. Підтримка кількох форматів етикеток (A4, термопринтер) та автоматична митна документація для міжнародних відправлень означає менше ручної роботи та менше помилок при відправленні.

Порівняння тарифів у реальному часі

Порівнюйте реальні тарифи між Backloads Solutions SIA та іншими вашими активованими перевізниками, щоб вибрати найкращий варіант на основі вартості, швидкості та рівня обслуговування.

Зберігайте свої узгоджені тарифи

Підключіть свій існуючий обліковий запис Backloads Solutions SIA, щоб зберегти свої узгоджені тарифи на відправлення. Cargoson просто надає технічну інтеграцію: ви зберігаєте свої прямі відносини з перевізниками та індивідуальні цінові угоди.

Безпека корпоративного рівня для інтеграції API Backloads Solutions SIA

Інфраструктура API Cargoson відповідає європейським стандартам відповідності, які забезпечують безпечну, готову до аудиту інтеграцію Backloads Solutions SIA для вашого бізнесу:

  • Обробка та зберігання даних відповідно до GDPR по всій Європі
  • Сертифіковане управління інформаційною безпекою ISO 27001
  • Наскрізне шифрування для всіх комунікацій API

Готові інтегрувати відправлення Backloads Solutions SIA у свою платформу?

Забронюйте демо, щоб побачити, як уніфікований API Cargoson може спростити ваші логістичні операції

Забронювати демо

Часті запитання

Cargoson - це система управління транспортом для європейських та північноамериканських виробників. Наше центральне бачення - простота: інтегруйте будь-яких та всіх перевізників і види вантажоперевезень (автомобільні, посилкові, авіа, морські, залізничні) в одне вікно та один API. Чи то ви відправляєте палети по Європі, чи контейнери за океан, керуйте всім з однієї платформи.

Почати просто. Спочатку зареєструйте обліковий запис Cargoson та отримайте свій API ключ. Потім підключіть свій обліковий запис Backloads Solutions SIA на панелі керування Cargoson. Після цього ви можете почати робити запити API, використовуючи нашу документацію та приклади коду. Зазвичай все налаштування займає менше години.

Так, вам знадобиться власний обліковий запис Backloads Solutions SIA для використання послуг Backloads Solutions SIA через Cargoson. Це гарантує, що ви зберігаєте свої узгоджені тарифи та підтримуєте прямі відносини з Backloads Solutions SIA. Cargoson просто надає технічний інтеграційний рівень, який полегшує роботу з Backloads Solutions SIA та іншими перевізниками через один уніфікований API.

Cargoson працює за прозорою моделлю щомісячної підписки без комісій за відправлення або комісійних, ніколи. Ваш план включає доступ до API, документацію, підтримку та автоматичні оновлення, коли перевізники змінюють свої системи. Ви платите Backloads Solutions SIA безпосередньо за відправлення за вашими узгодженими тарифами. Без прихованих витрат, без сюрпризів.

Абсолютно! Це основна перевага використання Cargoson. Після інтеграції нашого API ви можете працювати з Backloads Solutions SIA та 2000+ іншими перевізниками, використовуючи ті самі ендпоінти, автентифікацію та формати даних. Додавайте нових перевізників без написання нового інтеграційного коду, просто активуйте їх на своїй панелі керування Cargoson.

Так! Ми інтегруємо будь-якого перевізника, який вам потрібен, без додаткової плати. Це включено у вашу підписку Cargoson. Просто познайомте нас зі своїми контактами перевізників, і ми займемося технічною інтеграцією. Нові інтеграції додаються щодня на основі запитів клієнтів.

Так, ми можемо налаштувати вебхуки для сповіщення вашої системи на основі подій та тригерів у Cargoson, таких як оновлення статусу відправлення, підтвердження бронювання або зміни у ваших відправленнях. Зв'яжіться з нашою командою підтримки або забронюйте демо, щоб обговорити ваші вимоги до вебхуків та налаштування.

Cargoson може бути надмірним, якщо ви невелика компанія, яка відправляє лише кілька разів на місяць з одним перевізником. Ви, ймовірно, можете добре керувати цими відправленнями без системи управління транспортом. Ми також не підходимо, якщо ви перевізник або експедитор. Cargoson створений спеціально для власників вантажу (BCO), таких як виробники та дистриб'ютори, які володіють товарами, що відправляються. Якщо ви шукаєте систему управління транспортом для управління своїм експедиторським бізнесом або операціями перевізника, ми не призначені для цього випадку використання.

Наш API повертає чіткі повідомлення про помилки з конкретними кодами помилок та описами. Поширені проблеми задокументовані з рішеннями в нашій документації для розробників. Якщо ви застрягли, наша команда підтримки може допомогти усунути проблеми інтеграції.

Ми впроваджуємо розумні обмеження швидкості для забезпечення стабільності системи для всіх клієнтів. Є як довгострокові обмеження швидкості, так і обмеження пікових навантажень, зі значеннями, які повинні бути більш ніж достатніми для більшості підприємств. Якщо вам потрібні вищі ліміти для операцій корпоративного масштабу, зв'яжіться з нами, щоб обговорити індивідуальні обмеження швидкості для вашого облікового запису.

Почніть використовувати API Backloads Solutions SIA

Отримайте свої облікові дані API для початку інтеграції

Отримати API ключ