Документація API ColliCare Logistics AS

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

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

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

Огляд API ColliCare Logistics AS

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

Можливості API

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

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

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

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

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

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

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

API бронювання ColliCare Logistics AS

EDI перевізника
Покращення Cargoson:

ColliCare Logistics AS використовує EDIFACT/EDI для бронювань. Cargoson обгортає це в сучасний REST API, щоб ви отримували однаковий досвід розробника для всіх перевізників.

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

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

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

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

Щоб забронювати безпосередньо з ColliCare Logistics AS, завжди вказуйте direct_booking_service_id.

POST /queries

Створити запит на відправлення або пряме бронювання для ColliCare Logistics AS. Включіть 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 послуги ColliCare Logistics AS для прямого бронювання

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

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

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

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

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

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

API тарифів ColliCare Logistics AS (ціноутворення вантажоперевезень)

Прямий API перевізника

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

POST /freightPrices/list

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

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": "ColliCare Logistics AS",
        "reg_no": "980953343",
        "id": 3421,
        "service": "Main",
        "service_id": 85,
        "price": "19.13",
        "unit": "payable_weight",
        "type": "price_list"
      },
      {
        "carrier": "ColliCare Logistics AS",
        "reg_no": "980953343",
        "id": 3421,
        "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 відстеження ColliCare Logistics AS

Прямий API перевізника

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

GET /bookings/{reference}

Отримати деталі відстеження для відправлення ColliCare Logistics AS, використовуючи довідковий номер бронювання 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 етикеток повернення ColliCare Logistics AS

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

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

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

POST /bookings/{reference}/return_labels

Створити етикетку повернення для існуючого відправлення ColliCare Logistics AS.

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, термопринтер)
  • Окремий довідковий номер відстеження для повернень
  • Безшовна інтеграція з послугами повернення ColliCare Logistics AS

Запити на кур'єра ColliCare Logistics AS

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

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

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

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

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

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

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

Переваги

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

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

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

API послуг ColliCare Logistics AS

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

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

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

GET /services/list

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

Example Response

{
  "services": [
    {
      "carrier": {
        "id": 3421,
        "name": "ColliCare Logistics AS",
        "short_name": "ColliCare Logistics AS",
        "reg_no": "980953343"
      },
      "id": 85,
      "name": "Main",
      "service_type": "road_freight"
    },
    {
      "carrier": {
        "id": 3421,
        "name": "ColliCare Logistics AS",
        "short_name": "ColliCare Logistics AS",
        "reg_no": "980953343"
      },
      "id": 123,
      "name": "Express Service",
      "service_type": "express"
    }
  ]
}

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

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

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

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

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

# Step 1: Get freight prices for ColliCare Logistics AS
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 bookToColliCareLogisticsAS() {
  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
bookToColliCareLogisticsAS();
import requests

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

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

define('CARRIER_SERVICE_ID', 85);

function bookToColliCareLogisticsAS($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
bookToColliCareLogisticsAS($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_collicare_logistics_as
  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_collicare_logistics_as

Чому використовувати API Cargoson для інтеграції ColliCare Logistics AS

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

Переваги інтеграції ColliCare Logistics AS через API Cargoson

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

API відправлення ColliCare Logistics AS: Спрощена автоматизація логістики

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

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

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

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

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

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

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

Безпека корпоративного рівня для інтеграції API ColliCare Logistics AS

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

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

Готові інтегрувати відправлення ColliCare Logistics AS у свою платформу?

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

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

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

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

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

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

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

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

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

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

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

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

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

Почніть використовувати API ColliCare Logistics AS

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

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