MENU navbar-image

Introduction

if need change locale pass to header "locale" with value "en" or "ua" or "pl

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting your dashboard and clicking Generate API token.

Bus flight

Bus flights

Get list of bus flights

requires authentication

Get list of bus flights

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/bus-flights?page=1&per_page=10&status=open&bus_route_number=UA+1234556&departure_date=2021-01-01&from_departure_point_id=1&to_departure_point_id=1&without_connecting=1&date_range[from]=2021-01-01&date_range[to]=2021-01-01&bus_route_id=1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/bus-flights"
);

const params = {
    "page": "1",
    "per_page": "10",
    "status": "open",
    "bus_route_number": "UA 1234556",
    "departure_date": "2021-01-01",
    "from_departure_point_id": "1",
    "to_departure_point_id": "1",
    "without_connecting": "1",
    "date_range[from]": "2021-01-01",
    "date_range[to]": "2021-01-01",
    "bus_route_id": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 207,
            "departure_date": "2024-01-25T10:00:00.000000Z",
            "sale_end_time_before_departure": 0,
            "arrival_date": "2024-01-25T13:00:00.000000Z",
            "hours_in_travel": 3,
            "route": {
                "id": 77,
                "number": "1111",
                "name": "Киев-Чернигов",
                "ticket_hint": null,
                "translations": {
                    "name": {
                        "ua": "Киев-Чернигов",
                        "pl": "Киев-Чернигов",
                        "en": "Киев-Чернигов"
                    },
                    "ticket_hint": []
                },
                "sale_end_time_before_departure": 0,
                "status": "active",
                "carrier_name": "тест",
                "payment_time": 15,
                "sale_depth": 15,
                "flight_generation_depth": 15,
                "number_of_seats": 15,
                "seat_selection_allowed": true,
                "seat_selection_not_allowed_date_from": null,
                "seat_selection_not_allowed_date_to": null,
                "without_companion": true,
                "without_companion_price": 0,
                "min_price": [
                    {
                        "currency_id": 89,
                        "price": "10"
                    },
                    {
                        "currency_id": 88,
                        "price": "10"
                    }
                ],
                "forbidden_sale_date_from": null,
                "forbidden_sale_date_to": null,
                "created_at": "2024-01-19T11:56:53.000000Z",
                "updated_at": "2024-02-17T11:53:35.000000Z"
            },
            "status": "open",
            "payment_time": 15,
            "sale_depth": 15,
            "number_of_seats": 15,
            "carrier_name": "тест",
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "min_price": [
                {
                    "currency_id": 89,
                    "price": "10"
                },
                {
                    "currency_id": 88,
                    "price": "10"
                }
            ],
            "forbidden_sale_date_from": null,
            "forbidden_sale_date_to": null,
            "created_at": "2024-01-19T11:59:02.000000Z",
            "updated_at": "2024-04-22T06:40:52.000000Z"
        },
        {
            "id": 207,
            "departure_date": "2024-01-25T10:00:00.000000Z",
            "sale_end_time_before_departure": 0,
            "arrival_date": "2024-01-25T13:00:00.000000Z",
            "hours_in_travel": 3,
            "route": {
                "id": 77,
                "number": "1111",
                "name": "Киев-Чернигов",
                "ticket_hint": null,
                "translations": {
                    "name": {
                        "ua": "Киев-Чернигов",
                        "pl": "Киев-Чернигов",
                        "en": "Киев-Чернигов"
                    },
                    "ticket_hint": []
                },
                "sale_end_time_before_departure": 0,
                "status": "active",
                "carrier_name": "тест",
                "payment_time": 15,
                "sale_depth": 15,
                "flight_generation_depth": 15,
                "number_of_seats": 15,
                "seat_selection_allowed": true,
                "seat_selection_not_allowed_date_from": null,
                "seat_selection_not_allowed_date_to": null,
                "without_companion": true,
                "without_companion_price": 0,
                "min_price": [
                    {
                        "currency_id": 89,
                        "price": "10"
                    },
                    {
                        "currency_id": 88,
                        "price": "10"
                    }
                ],
                "forbidden_sale_date_from": null,
                "forbidden_sale_date_to": null,
                "created_at": "2024-01-19T11:56:53.000000Z",
                "updated_at": "2024-02-17T11:53:35.000000Z"
            },
            "status": "open",
            "payment_time": 15,
            "sale_depth": 15,
            "number_of_seats": 15,
            "carrier_name": "тест",
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "min_price": [
                {
                    "currency_id": 89,
                    "price": "10"
                },
                {
                    "currency_id": 88,
                    "price": "10"
                }
            ],
            "forbidden_sale_date_from": null,
            "forbidden_sale_date_to": null,
            "created_at": "2024-01-19T11:59:02.000000Z",
            "updated_at": "2024-04-22T06:40:52.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Назад",
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "active": true
            },
            {
                "url": null,
                "label": "Вперед »",
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}
 

Request   

GET integration-api/bus-flights

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Query Parameters

page   integer   

Page number Example: 1

per_page   integer   

Items per page Example: 10

status   string   

Status Example: open

bus_route_number   string   

Bus route number Example: UA 1234556

departure_date   string   

Departure date Example: 2021-01-01

from_departure_point_id   integer   

From departure point id Example: 1

to_departure_point_id   integer   

To departure point id Example: 1

without_connecting   integer   

Without connection Example: 1

date_range   string[]   

Date range

bus_route_id   integer   

Bus route id Example: 1

Show bus flights

requires authentication

Get list of bus flights

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/bus-flights/207" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/bus-flights/207"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 207,
        "departure_date": "2024-01-25T10:00:00.000000Z",
        "sale_end_time_before_departure": 0,
        "arrival_date": "2024-01-25T13:00:00.000000Z",
        "hours_in_travel": 3,
        "route": {
            "id": 77,
            "number": "1111",
            "name": "Киев-Чернигов",
            "ticket_hint": null,
            "translations": {
                "name": {
                    "ua": "Киев-Чернигов",
                    "pl": "Киев-Чернигов",
                    "en": "Киев-Чернигов"
                },
                "ticket_hint": []
            },
            "sale_end_time_before_departure": 0,
            "status": "active",
            "carrier_name": "тест",
            "payment_time": 15,
            "sale_depth": 15,
            "flight_generation_depth": 15,
            "number_of_seats": 15,
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "without_companion_price": 0,
            "min_price": [
                {
                    "currency_id": 89,
                    "price": "10"
                },
                {
                    "currency_id": 88,
                    "price": "10"
                }
            ],
            "additional_price_settings": [],
            "forbidden_sale_date_from": null,
            "forbidden_sale_date_to": null,
            "created_at": "2024-01-19T11:56:53.000000Z",
            "updated_at": "2024-02-17T11:53:35.000000Z"
        },
        "bus": {
            "id": 148,
            "name": "Автобус",
            "number": "WK 77296",
            "status": "active",
            "created_at": "2024-02-16T19:04:00.000000Z",
            "updated_at": "2024-05-17T18:26:50.000000Z"
        },
        "user": {
            "id": 1,
            "first_name": "Eladio",
            "last_name": "Weber",
            "middle_name": "Lazaro",
            "full_name": "Eladio Weber Lazaro",
            "work_phone": null,
            "name": "Herta Jast",
            "phone": "+1-667-744-6598",
            "email": "admin@admin.com",
            "birthday": null,
            "subscribe_to_newsletter": false,
            "status": "new",
            "need_change_password": true,
            "percent_of_withdrawal": 0,
            "percent_of_discount": 0,
            "send_sms_order_post_payment_link": true,
            "created_at": "2023-10-27T07:45:00.000000Z",
            "updated_at": "2024-03-12T18:49:24.000000Z"
        },
        "driver": {
            "id": 519,
            "first_name": "Петро",
            "last_name": "Шевченко",
            "middle_name": "Петрович",
            "full_name": "Петро Шевченко Петрович",
            "work_phone": "38063999999"
        },
        "dispatcher": null,
        "status": "open",
        "payment_time": 15,
        "sale_depth": 15,
        "number_of_seats": 15,
        "carrier_name": "тест",
        "occupiedSeats": [
            {
                "id": 22,
                "bus_flight_id": 207,
                "from_departure_point_id": 87,
                "to_departure_point_id": 88,
                "seat_number": 9,
                "type": "reserved",
                "created_at": "2024-01-25T07:57:29.000000Z",
                "updated_at": "2024-02-19T12:32:03.000000Z"
            }
        ],
        "seat_selection_allowed": true,
        "seat_selection_not_allowed_date_from": null,
        "seat_selection_not_allowed_date_to": null,
        "without_companion": true,
        "baggage_transportation_conditions": [
            {
                "id": 164,
                "name": "Hand baggage (free)",
                "translations": {
                    "name": {
                        "ua": "Ручна поклажа (безкоштовно)",
                        "pl": "Bagaż podręczny (bezpłatny)",
                        "en": "Hand baggage (free)"
                    }
                },
                "prices": [
                    {
                        "currency_id": 88,
                        "price": 0
                    },
                    {
                        "currency_id": 89,
                        "price": 0
                    }
                ],
                "created_at": "2024-01-19T11:59:02.000000Z",
                "updated_at": "2024-01-19T11:59:02.000000Z"
            }
        ],
        "return_conditions": [
            {
                "id": 344,
                "departure_start": 10,
                "departure_end": 20,
                "retention_percentage": 1,
                "created_at": "2024-01-19T11:59:02.000000Z",
                "updated_at": "2024-01-19T11:59:02.000000Z"
            },
            {
                "id": 345,
                "departure_start": 24,
                "departure_end": 1,
                "retention_percentage": 100,
                "created_at": "2024-01-19T11:59:02.000000Z",
                "updated_at": "2024-01-19T11:59:02.000000Z"
            },
            {
                "id": 346,
                "departure_start": 24,
                "departure_end": 2,
                "retention_percentage": 50,
                "created_at": "2024-01-19T11:59:02.000000Z",
                "updated_at": "2024-01-19T11:59:02.000000Z"
            }
        ],
        "currencies": [
            {
                "id": 88,
                "display_name": "Гривня",
                "code": "UAH",
                "symbol": "₴",
                "is_active": true,
                "created_at": "2023-11-02T11:57:10.000000Z",
                "updated_at": "2023-11-02T11:57:10.000000Z"
            },
            {
                "id": 89,
                "display_name": "Злотий",
                "code": "PLN",
                "symbol": "zł",
                "is_active": true,
                "created_at": "2023-11-02T11:58:50.000000Z",
                "updated_at": "2023-11-02T11:58:50.000000Z"
            }
        ],
        "min_price": [
            {
                "currency_id": 89,
                "price": "10"
            },
            {
                "currency_id": 88,
                "price": "10"
            }
        ],
        "prices": [
            {
                "id": 20172,
                "from_departure_point_id": 87,
                "to_departure_point_id": 88,
                "price": [
                    {
                        "amount": 10,
                        "currency_id": 88
                    },
                    {
                        "amount": 10,
                        "currency_id": 89
                    },
                    {
                        "amount": 0,
                        "currency_id": 90
                    },
                    {
                        "amount": 0,
                        "currency_id": 91
                    }
                ],
                "is_active": true,
                "is_forbidden": false
            }
        ],
        "schedules": [
            {
                "id": 1631,
                "departure_point_id": 87,
                "departure_point": {
                    "id": 87,
                    "name": "Автостанция \"Киев\",улица С.Петлюры 32",
                    "translations": {
                        "name": {
                            "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                            "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                            "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                            "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
                        }
                    },
                    "city": {
                        "id": 267,
                        "name": "Киев",
                        "translations": {
                            "name": {
                                "ua": "Київ",
                                "pl": "Kijów",
                                "en": "Kyiv",
                                "ru": "Киев"
                            }
                        },
                        "population": null,
                        "number_of_bus_routes": 0,
                        "visibility": true,
                        "country_id": 6,
                        "created_at": "2023-11-02T11:51:05.000000Z",
                        "updated_at": "2024-02-18T14:28:39.000000Z"
                    },
                    "visibility": true,
                    "created_at": "2023-11-02T11:52:18.000000Z",
                    "updated_at": "2024-03-23T12:23:48.000000Z"
                },
                "arrival_time": "12:00",
                "departure_time": "12:00",
                "days_in_road": 0,
                "platform": null,
                "has_landing": true,
                "has_disembarkation": false,
                "is_connecting": false,
                "is_connecting_start_endpoint": false,
                "position": 0,
                "sale_status": "open",
                "is_active": true,
                "has_transfer": false,
                "created_at": "2024-01-19T11:59:02.000000Z",
                "updated_at": "2024-04-22T06:39:22.000000Z"
            },
            {
                "id": 1632,
                "departure_point_id": 88,
                "departure_point": {
                    "id": 88,
                    "name": "Голливуд",
                    "translations": {
                        "name": {
                            "ua": "Голливуд",
                            "pl": "Голливуд",
                            "en": "Голливуд"
                        }
                    },
                    "city": {
                        "id": 268,
                        "name": "Чернигов",
                        "translations": {
                            "name": {
                                "ua": "Чернігів",
                                "en": "Chernihiv",
                                "pl": "Czernihów",
                                "ru": "Чернигов"
                            }
                        },
                        "population": null,
                        "number_of_bus_routes": 0,
                        "visibility": true,
                        "country_id": 6,
                        "created_at": "2023-11-02T11:51:37.000000Z",
                        "updated_at": "2025-07-17T06:32:14.000000Z"
                    },
                    "visibility": true,
                    "created_at": "2023-11-02T11:53:33.000000Z",
                    "updated_at": "2023-11-02T11:53:33.000000Z"
                },
                "arrival_time": "15:00",
                "departure_time": "15:00",
                "days_in_road": 0,
                "platform": null,
                "has_landing": false,
                "has_disembarkation": true,
                "is_connecting": false,
                "is_connecting_start_endpoint": false,
                "position": 1,
                "sale_status": "open",
                "is_active": true,
                "has_transfer": false,
                "created_at": "2024-01-19T11:59:02.000000Z",
                "updated_at": "2024-04-22T06:39:22.000000Z"
            }
        ],
        "forbidden_sale_date_from": null,
        "forbidden_sale_date_to": null,
        "payment_methods": [
            {
                "id": 1,
                "name": "stripe",
                "display_name": "Оплата через Stripe",
                "logo_path": null,
                "created_at": "2023-10-27T07:44:26.000000Z",
                "updated_at": "2023-11-03T07:53:11.000000Z"
            },
            {
                "id": 2,
                "name": "liqpay",
                "display_name": "Оплата через LiqPay",
                "logo_path": null,
                "created_at": "2023-10-27T07:44:26.000000Z",
                "updated_at": "2023-11-03T07:53:11.000000Z"
            },
            {
                "id": 3,
                "name": "spot",
                "display_name": "Оплата на месте",
                "logo_path": null,
                "created_at": "2023-10-27T07:44:26.000000Z",
                "updated_at": "2023-11-03T07:53:11.000000Z"
            }
        ],
        "carrier": {
            "id": 1,
            "name": "test",
            "hotline_phone": null,
            "edrpou": null,
            "disclaimer": null,
            "translations": {
                "disclaimer": []
            }
        },
        "created_at": "2024-01-19T11:59:02.000000Z",
        "updated_at": "2024-04-22T06:40:52.000000Z"
    }
}
 

Request   

GET integration-api/bus-flights/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

id   integer   

The ID of the bus flight. Example: 207

Bus route

Bus routes

Get all bus routes

requires authentication

Get all bus routes

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/bus-routes?page=1&search=000+111&status=active&city_from_id=1&city_to_id=2&departure_date=2021-01-01&from_departure_point_id=1&to_departure_point_id=1&without_connecting=1&include_schedule=1&per_page=10" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/bus-routes"
);

const params = {
    "page": "1",
    "search": "000 111",
    "status": "active",
    "city_from_id": "1",
    "city_to_id": "2",
    "departure_date": "2021-01-01",
    "from_departure_point_id": "1",
    "to_departure_point_id": "1",
    "without_connecting": "1",
    "include_schedule": "1",
    "per_page": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 82,
            "number": "HH001",
            "name": "Харьков-Гамбург",
            "ticket_hint": null,
            "translations": {
                "name": {
                    "ua": "Харків-Гановер",
                    "pl": "Charkow-Hamburg",
                    "en": "Kharkiv-Hamburg",
                    "ru": "Харьков-Гамбург"
                },
                "ticket_hint": []
            },
            "sale_end_time_before_departure": 0,
            "status": "active",
            "city_from": {
                "id": 4858,
                "name": "Харьков",
                "translations": {
                    "name": {
                        "ua": "Харків",
                        "pl": "Charków",
                        "en": "Харьков",
                        "ru": "Харьков"
                    }
                },
                "population": null,
                "number_of_bus_routes": 0,
                "visibility": true,
                "country_id": 6,
                "created_at": "2024-02-03T09:07:54.000000Z",
                "updated_at": "2025-07-17T07:07:04.000000Z"
            },
            "city_to": {
                "id": 4857,
                "name": "Гамбург",
                "translations": {
                    "name": {
                        "ua": "Гамбург",
                        "pl": "Hamburg",
                        "en": "Гамбург",
                        "ru": "Гамбург"
                    }
                },
                "population": null,
                "number_of_bus_routes": 0,
                "visibility": true,
                "country_id": 8,
                "created_at": "2024-02-03T09:06:36.000000Z",
                "updated_at": "2025-07-17T07:07:04.000000Z"
            },
            "user": {
                "id": 1,
                "first_name": "Eladio",
                "last_name": "Weber",
                "middle_name": "Lazaro",
                "full_name": "Eladio Weber Lazaro",
                "work_phone": null,
                "name": "Herta Jast",
                "phone": "+1-667-744-6598",
                "email": "admin@admin.com",
                "birthday": null,
                "subscribe_to_newsletter": false,
                "status": "new",
                "need_change_password": true,
                "percent_of_withdrawal": 0,
                "percent_of_discount": 0,
                "send_sms_order_post_payment_link": true,
                "created_at": "2023-10-27T07:45:00.000000Z",
                "updated_at": "2024-03-12T18:49:24.000000Z"
            },
            "carrier_name": null,
            "payment_time": 15,
            "sale_depth": 30,
            "flight_generation_depth": 30,
            "number_of_seats": 57,
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "without_companion_price": 0,
            "min_price": null,
            "forbidden_sale_date_from": null,
            "forbidden_sale_date_to": null,
            "created_at": "2024-02-03T11:27:43.000000Z",
            "updated_at": "2024-04-19T06:50:53.000000Z"
        },
        {
            "id": 82,
            "number": "HH001",
            "name": "Харьков-Гамбург",
            "ticket_hint": null,
            "translations": {
                "name": {
                    "ua": "Харків-Гановер",
                    "pl": "Charkow-Hamburg",
                    "en": "Kharkiv-Hamburg",
                    "ru": "Харьков-Гамбург"
                },
                "ticket_hint": []
            },
            "sale_end_time_before_departure": 0,
            "status": "active",
            "city_from": {
                "id": 4858,
                "name": "Харьков",
                "translations": {
                    "name": {
                        "ua": "Харків",
                        "pl": "Charków",
                        "en": "Харьков",
                        "ru": "Харьков"
                    }
                },
                "population": null,
                "number_of_bus_routes": 0,
                "visibility": true,
                "country_id": 6,
                "created_at": "2024-02-03T09:07:54.000000Z",
                "updated_at": "2025-07-17T07:07:04.000000Z"
            },
            "city_to": {
                "id": 4857,
                "name": "Гамбург",
                "translations": {
                    "name": {
                        "ua": "Гамбург",
                        "pl": "Hamburg",
                        "en": "Гамбург",
                        "ru": "Гамбург"
                    }
                },
                "population": null,
                "number_of_bus_routes": 0,
                "visibility": true,
                "country_id": 8,
                "created_at": "2024-02-03T09:06:36.000000Z",
                "updated_at": "2025-07-17T07:07:04.000000Z"
            },
            "user": {
                "id": 1,
                "first_name": "Eladio",
                "last_name": "Weber",
                "middle_name": "Lazaro",
                "full_name": "Eladio Weber Lazaro",
                "work_phone": null,
                "name": "Herta Jast",
                "phone": "+1-667-744-6598",
                "email": "admin@admin.com",
                "birthday": null,
                "subscribe_to_newsletter": false,
                "status": "new",
                "need_change_password": true,
                "percent_of_withdrawal": 0,
                "percent_of_discount": 0,
                "send_sms_order_post_payment_link": true,
                "created_at": "2023-10-27T07:45:00.000000Z",
                "updated_at": "2024-03-12T18:49:24.000000Z"
            },
            "carrier_name": null,
            "payment_time": 15,
            "sale_depth": 30,
            "flight_generation_depth": 30,
            "number_of_seats": 57,
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "without_companion_price": 0,
            "min_price": null,
            "forbidden_sale_date_from": null,
            "forbidden_sale_date_to": null,
            "created_at": "2024-02-03T11:27:43.000000Z",
            "updated_at": "2024-04-19T06:50:53.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Назад",
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "active": true
            },
            {
                "url": null,
                "label": "Вперед »",
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}
 

Request   

GET integration-api/bus-routes

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Query Parameters

page   string   

Page number Example: 1

search   string   

Search string Example: 000 111

status   string   

Status Example: active

city_from_id   string   

City from ID Example: 1

city_to_id   string   

City to ID Example: 2

departure_date   string   

Departure date Example: 2021-01-01

from_departure_point_id   integer   

From departure point id Example: 1

to_departure_point_id   integer   

To departure point id Example: 1

without_connecting   integer   

Without connection Example: 1

include_schedule   integer   

Include bus route schedule Example: 1

per_page   integer   

Items per page Example: 10

Show bus route

requires authentication

Get bus route

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/bus-routes/82" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/bus-routes/82"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 82,
        "number": "HH001",
        "name": "Харьков-Гамбург",
        "ticket_hint": null,
        "translations": {
            "name": {
                "ua": "Харків-Гановер",
                "pl": "Charkow-Hamburg",
                "en": "Kharkiv-Hamburg",
                "ru": "Харьков-Гамбург"
            },
            "ticket_hint": []
        },
        "sale_end_time_before_departure": 0,
        "status": "active",
        "city_from": {
            "id": 4858,
            "name": "Харьков",
            "translations": {
                "name": {
                    "ua": "Харків",
                    "pl": "Charków",
                    "en": "Харьков",
                    "ru": "Харьков"
                }
            },
            "population": null,
            "number_of_bus_routes": 0,
            "visibility": true,
            "country_id": 6,
            "created_at": "2024-02-03T09:07:54.000000Z",
            "updated_at": "2025-07-17T07:07:04.000000Z"
        },
        "city_to": {
            "id": 4857,
            "name": "Гамбург",
            "translations": {
                "name": {
                    "ua": "Гамбург",
                    "pl": "Hamburg",
                    "en": "Гамбург",
                    "ru": "Гамбург"
                }
            },
            "population": null,
            "number_of_bus_routes": 0,
            "visibility": true,
            "country_id": 8,
            "created_at": "2024-02-03T09:06:36.000000Z",
            "updated_at": "2025-07-17T07:07:04.000000Z"
        },
        "user": {
            "id": 1,
            "first_name": "Eladio",
            "last_name": "Weber",
            "middle_name": "Lazaro",
            "full_name": "Eladio Weber Lazaro",
            "work_phone": null,
            "name": "Herta Jast",
            "phone": "+1-667-744-6598",
            "email": "admin@admin.com",
            "birthday": null,
            "subscribe_to_newsletter": false,
            "status": "new",
            "need_change_password": true,
            "percent_of_withdrawal": 0,
            "percent_of_discount": 0,
            "send_sms_order_post_payment_link": true,
            "created_at": "2023-10-27T07:45:00.000000Z",
            "updated_at": "2024-03-12T18:49:24.000000Z"
        },
        "bus": {
            "id": 148,
            "name": "Автобус",
            "number": "WK 77296",
            "status": "active",
            "created_at": "2024-02-16T19:04:00.000000Z",
            "updated_at": "2024-05-17T18:26:50.000000Z"
        },
        "driver": {
            "id": 519,
            "first_name": "Петро",
            "last_name": "Шевченко",
            "middle_name": "Петрович",
            "full_name": "Петро Шевченко Петрович",
            "work_phone": "38063999999",
            "name": "Шевченко (водитель)",
            "phone": "38063999999",
            "email": "driver1@admin.com",
            "birthday": null,
            "subscribe_to_newsletter": false,
            "status": "active",
            "need_change_password": true,
            "percent_of_withdrawal": 0,
            "percent_of_discount": -5,
            "send_sms_order_post_payment_link": true,
            "created_at": "2023-11-02T12:15:46.000000Z",
            "updated_at": "2025-06-13T07:14:14.000000Z"
        },
        "dispatcher": {
            "id": 520,
            "first_name": "test",
            "last_name": "test",
            "middle_name": "test",
            "full_name": "test test test",
            "work_phone": "2345678",
            "name": null,
            "phone": "123123",
            "email": "test@test.com",
            "birthday": null,
            "subscribe_to_newsletter": false,
            "status": "active",
            "need_change_password": true,
            "percent_of_withdrawal": 0,
            "percent_of_discount": 0,
            "send_sms_order_post_payment_link": true,
            "created_at": "2023-12-19T10:19:03.000000Z",
            "updated_at": "2024-12-09T14:50:47.000000Z"
        },
        "carrier_name": null,
        "payment_time": 15,
        "sale_depth": 30,
        "flight_generation_depth": 30,
        "number_of_seats": 57,
        "seat_selection_allowed": true,
        "seat_selection_not_allowed_date_from": null,
        "seat_selection_not_allowed_date_to": null,
        "without_companion": true,
        "without_companion_price": 0,
        "baggage_transportation_conditions": [
            {
                "id": 208,
                "name": "Hand baggage (free)",
                "translations": {
                    "name": {
                        "ua": "Ручна поклажа (безкоштовно)",
                        "pl": "Bagaż podręczny (bezpłatny)",
                        "en": "Hand baggage (free)"
                    }
                },
                "prices": [
                    {
                        "currency_id": 88,
                        "price": 0
                    },
                    {
                        "currency_id": 89,
                        "price": 0
                    }
                ],
                "created_at": "2024-02-03T11:27:43.000000Z",
                "updated_at": "2024-02-03T11:27:43.000000Z"
            }
        ],
        "return_conditions": [
            {
                "id": 29793,
                "departure_start": 72,
                "departure_end": 0,
                "retention_percentage": 25,
                "created_at": "2025-06-13T05:58:05.000000Z",
                "updated_at": "2025-06-13T05:58:05.000000Z"
            },
            {
                "id": 29794,
                "departure_start": 24,
                "departure_end": 72,
                "retention_percentage": 50,
                "created_at": "2025-06-13T05:58:05.000000Z",
                "updated_at": "2025-06-13T05:58:05.000000Z"
            },
            {
                "id": 29795,
                "departure_start": 0,
                "departure_end": 24,
                "retention_percentage": 100,
                "created_at": "2025-06-13T05:58:05.000000Z",
                "updated_at": "2025-06-13T05:58:05.000000Z"
            }
        ],
        "currencies": [
            {
                "id": 88,
                "display_name": "Гривня",
                "code": "UAH",
                "symbol": "₴",
                "is_active": true,
                "created_at": "2023-11-02T11:57:10.000000Z",
                "updated_at": "2023-11-02T11:57:10.000000Z"
            },
            {
                "id": 89,
                "display_name": "Злотий",
                "code": "PLN",
                "symbol": "zł",
                "is_active": true,
                "created_at": "2023-11-02T11:58:50.000000Z",
                "updated_at": "2023-11-02T11:58:50.000000Z"
            },
            {
                "id": 91,
                "display_name": "Евро",
                "code": "EUR",
                "symbol": "€",
                "is_active": true,
                "created_at": "2024-01-17T05:26:29.000000Z",
                "updated_at": "2024-01-17T05:26:29.000000Z"
            }
        ],
        "min_price": null,
        "forbidden_sale_date_from": null,
        "forbidden_sale_date_to": null,
        "payment_methods": [
            {
                "id": 1,
                "name": "stripe",
                "display_name": "Оплата через Stripe",
                "logo_path": null,
                "created_at": "2023-10-27T07:44:26.000000Z",
                "updated_at": "2023-11-03T07:53:11.000000Z"
            },
            {
                "id": 2,
                "name": "liqpay",
                "display_name": "Оплата через LiqPay",
                "logo_path": null,
                "created_at": "2023-10-27T07:44:26.000000Z",
                "updated_at": "2023-11-03T07:53:11.000000Z"
            },
            {
                "id": 3,
                "name": "spot",
                "display_name": "Оплата на месте",
                "logo_path": null,
                "created_at": "2023-10-27T07:44:26.000000Z",
                "updated_at": "2023-11-03T07:53:11.000000Z"
            }
        ],
        "notification_settings": {
            "notify_about_ticket_sales": true,
            "notify_about_ticket_sales_email": "officelat@ukr.net",
            "notify_about_ticket_refund": true,
            "notify_about_ticket_refund_email": null,
            "notify_before_departure": true,
            "notify_before_departure_email": null,
            "notify_before_departure_time": 600
        },
        "carrier": {
            "id": 1,
            "name": "test",
            "hotline_phone": null,
            "edrpou": null,
            "disclaimer": null,
            "translations": {
                "disclaimer": []
            }
        },
        "created_at": "2024-02-03T11:27:43.000000Z",
        "updated_at": "2024-04-19T06:50:53.000000Z"
    }
}
 

Request   

GET integration-api/bus-routes/{id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

id   integer   

The ID of the bus route. Example: 82

Endpoints

Search external bus flights tickets

requires authentication

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/external-tickets?from_departure_point_id=10&to_departure_point_id=19&from_departure_city_id=8&to_departure_city_id=20&departure_date=temporibus&number_of_passengers=16" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/external-tickets"
);

const params = {
    "from_departure_point_id": "10",
    "to_departure_point_id": "19",
    "from_departure_city_id": "8",
    "to_departure_city_id": "20",
    "departure_date": "temporibus",
    "number_of_passengers": "16",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 1000
x-ratelimit-remaining: 997
access-control-allow-origin: *
 

{
    "message": "Unauthorized"
}
 

Request   

GET integration-api/external-tickets

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Query Parameters

from_departure_point_id   integer   

ID of the departure point from which the bus flight departs Example: 10

to_departure_point_id   integer   

ID of the departure point to which the bus flight arrives Example: 19

from_departure_city_id   integer   

ID of the city from which the bus flight departs Example: 8

to_departure_city_id   integer   

ID of the city to which the bus flight arrives Example: 20

departure_date   string   

Date of departure in format YYYY-MM-DD Example: temporibus

number_of_passengers   integer   

Number of passengers for the bus flight search Example: 16

Buy external bus flight tickets

requires authentication

Example request:
curl --request POST \
    "https://testapi.ticketbus365.com/integration-api/external-tickets/buy" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua" \
    --data "{
    \"trip_data_bundle\": \"sed\",
    \"passengers\": [
        \"possimus\"
    ],
    \"payment_method_id\": 9
}"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/external-tickets/buy"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

let body = {
    "trip_data_bundle": "sed",
    "passengers": [
        "possimus"
    ],
    "payment_method_id": 9
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

POST integration-api/external-tickets/buy

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Body Parameters

trip_data_bundle   string   

Serialized trip data bundle containing trip details Example: sed

passengers   string[]   

Array of passengers with their details

*   object  optional  
first_name   string   

First name of the passenger Example: saepe

last_name   string   

Last name of the passenger Example: ea

phone   string   

Phone number of the passenger Example: nostrum

email   string   

Email of the passenger (optional) Example: ruben.dubuque@example.com

seat   string   

Seat number for the passenger (optional) Example: omnis

comment   string   

Comment for the passenger (optional) Example: voluptatem

discount_id   string   

ID of the discount to be applied for the passenger (optional) Example: labore

payment_method_id   integer   

ID of the payment method to be used for the purchase Example: 9

Get external bus flight details

requires authentication

Example request:
curl --request POST \
    "https://testapi.ticketbus365.com/integration-api/external-tickets" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua" \
    --data "{
    \"data_bundle\": \"beatae\"
}"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/external-tickets"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

let body = {
    "data_bundle": "beatae"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

POST integration-api/external-tickets

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Body Parameters

data_bundle   string   

Serialized trip data bundle containing trip details Example: beatae

Geo

Geo data

Get a country

requires authentication

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/countries/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/countries/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 56,
        "name": "Venezuela",
        "translations": {
            "name": {
                "en": "Venezuela",
                "ar": "Uruguay"
            }
        },
        "code": "BS",
        "timezone": null,
        "created_at": "2025-09-25T06:32:23.000000Z",
        "updated_at": "2025-09-25T06:32:23.000000Z"
    }
}
 

Request   

GET integration-api/countries/{country}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

country   integer   

Country ID Example: 1

Get all cities

requires authentication

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/cities?page=1&search=New+York&country=1&per_page=10" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/cities"
);

const params = {
    "page": "1",
    "search": "New York",
    "country": "1",
    "per_page": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": null,
            "name": "Cathrynborough",
            "translations": {
                "name": {
                    "en": "Cathrynborough",
                    "ar": "Port Elizabethland"
                }
            },
            "population": null,
            "number_of_bus_routes": 0,
            "visibility": null,
            "country_id": 58,
            "created_at": null,
            "updated_at": null
        },
        {
            "id": null,
            "name": "Lorineton",
            "translations": {
                "name": {
                    "en": "Lorineton",
                    "ar": "Lake Alicia"
                }
            },
            "population": null,
            "number_of_bus_routes": 0,
            "visibility": null,
            "country_id": 60,
            "created_at": null,
            "updated_at": null
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Назад",
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "active": true
            },
            {
                "url": null,
                "label": "Вперед »",
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}
 

Request   

GET integration-api/cities

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Query Parameters

page   integer   

Page number Example: 1

search   string   

Search string Example: New York

country   integer   

Filter by country id Example: 1

per_page   integer   

Items per page Example: 10

requires authentication

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/cities/search?query=New+York" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/cities/search"
);

const params = {
    "query": "New York",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": null,
            "name": "Yundtbury",
            "translations": {
                "name": {
                    "en": "Yundtbury",
                    "ar": "Riceview"
                }
            },
            "population": null,
            "number_of_bus_routes": 0,
            "visibility": null,
            "country_id": 62,
            "created_at": null,
            "updated_at": null
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=2",
        "prev": null,
        "next": "/?page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 2,
        "links": [
            {
                "url": null,
                "label": "« Назад",
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "active": true
            },
            {
                "url": "/?page=2",
                "label": "2",
                "active": false
            },
            {
                "url": "/?page=2",
                "label": "Вперед »",
                "active": false
            }
        ],
        "path": "/",
        "per_page": 1,
        "to": 1,
        "total": 2
    }
}
 

Get a city

requires authentication

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/cities/267" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/cities/267"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 1000
x-ratelimit-remaining: 998
access-control-allow-origin: *
 

{
    "message": "Unauthorized"
}
 

Request   

GET integration-api/cities/{city}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

city   integer   

The city. Example: 267

Get all departure points

requires authentication

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/departure-points?page=1&search=New+York&city=1&per_page=10" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/departure-points"
);

const params = {
    "page": "1",
    "search": "New York",
    "city": "1",
    "per_page": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 87,
            "name": "Автостанция \"Киев\",улица С.Петлюры 32",
            "translations": {
                "name": {
                    "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                    "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                    "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                    "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
                }
            },
            "city": {
                "id": 267,
                "name": "Киев",
                "translations": {
                    "name": {
                        "ua": "Київ",
                        "pl": "Kijów",
                        "en": "Kyiv",
                        "ru": "Киев"
                    }
                },
                "population": null,
                "number_of_bus_routes": 0,
                "visibility": true,
                "country_id": 6,
                "created_at": "2023-11-02T11:51:05.000000Z",
                "updated_at": "2024-02-18T14:28:39.000000Z"
            },
            "visibility": true,
            "created_at": "2023-11-02T11:52:18.000000Z",
            "updated_at": "2024-03-23T12:23:48.000000Z"
        },
        {
            "id": 87,
            "name": "Автостанция \"Киев\",улица С.Петлюры 32",
            "translations": {
                "name": {
                    "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                    "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                    "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                    "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
                }
            },
            "city": {
                "id": 267,
                "name": "Киев",
                "translations": {
                    "name": {
                        "ua": "Київ",
                        "pl": "Kijów",
                        "en": "Kyiv",
                        "ru": "Киев"
                    }
                },
                "population": null,
                "number_of_bus_routes": 0,
                "visibility": true,
                "country_id": 6,
                "created_at": "2023-11-02T11:51:05.000000Z",
                "updated_at": "2024-02-18T14:28:39.000000Z"
            },
            "visibility": true,
            "created_at": "2023-11-02T11:52:18.000000Z",
            "updated_at": "2024-03-23T12:23:48.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Назад",
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "active": true
            },
            {
                "url": null,
                "label": "Вперед »",
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}
 

Request   

GET integration-api/departure-points

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Query Parameters

page   integer   

Page number Example: 1

search   string   

Search string Example: New York

city   integer   

Filter by city id Example: 1

per_page   integer   

Items per page Example: 10

Get a departure point

requires authentication

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/departure-points/87" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/departure-points/87"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 87,
        "name": "Автостанция \"Киев\",улица С.Петлюры 32",
        "translations": {
            "name": {
                "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
            }
        },
        "city": {
            "id": 267,
            "name": "Киев",
            "translations": {
                "name": {
                    "ua": "Київ",
                    "pl": "Kijów",
                    "en": "Kyiv",
                    "ru": "Киев"
                }
            },
            "population": null,
            "number_of_bus_routes": 0,
            "visibility": true,
            "country_id": 6,
            "created_at": "2023-11-02T11:51:05.000000Z",
            "updated_at": "2024-02-18T14:28:39.000000Z"
        },
        "visibility": true,
        "created_at": "2023-11-02T11:52:18.000000Z",
        "updated_at": "2024-03-23T12:23:48.000000Z"
    }
}
 

Request   

GET integration-api/departure-points/{departurePoint_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

departurePoint_id   integer   

The ID of the departurePoint. Example: 87

Orders

Show order

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/orders/18" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/orders/18"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": null,
        "public_id": "",
        "paid_at": null,
        "agent_id": null,
        "status": null,
        "total_price": 868.15,
        "payment_on_the_spot": null,
        "expired_at": null,
        "created_at": null,
        "updated_at": null
    }
}
 

Request   

GET integration-api/orders/{order_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

order_id   integer   

The ID of the order. Example: 18

Passengers

Passengers

Cancel ticket

Cancel ticket

Example request:
curl --request PATCH \
    "https://testapi.ticketbus365.com/integration-api/cancel-ticket/aut" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua" \
    --data "{
    \"cancel_reason_id\": 1,
    \"cancel_comment\": \"Comment\",
    \"clear_occupied_seats\": true
}"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/cancel-ticket/aut"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

let body = {
    "cancel_reason_id": 1,
    "cancel_comment": "Comment",
    "clear_occupied_seats": true
};

fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 22,
        "type": "internal",
        "public_id": "YHETxCGlb0NmnHK",
        "price": "10.00",
        "order_id": 25,
        "first_name": "test",
        "last_name": "test",
        "phone": "11111111111",
        "email": null,
        "birthday": null,
        "passenger_type": "adult",
        "departure_date": "2024-01-25T09:00:00.000000Z",
        "bus_flight_id": 207,
        "canceled_at": null,
        "cancel_comment": null,
        "status": "pending",
        "seat_change_allowed": true,
        "comment": null,
        "is_processed": false,
        "external_route_name": null,
        "external_ticket_id": null,
        "external_discount_name": null,
        "is_external": false,
        "created_at": "2024-01-25T07:57:29.000000Z",
        "updated_at": "2025-08-06T06:32:46.000000Z"
    }
}
 

Request   

PATCH integration-api/cancel-ticket/{ticket}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

ticket   string   

Example: aut

Body Parameters

cancel_reason_id   integer   

Cancel reason id Example: 1

cancel_comment   string   

Cancel comment Example: Comment

clear_occupied_seats   boolean   

Clear occupied seats Example: true

Accept partially payment

Accept partially payment

Example request:
curl --request POST \
    "https://testapi.ticketbus365.com/integration-api/accept-partially-payment/quibusdam" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua" \
    --data "{
    \"amount\": 100,
    \"payment_method_id\": 1
}"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/accept-partially-payment/quibusdam"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

let body = {
    "amount": 100,
    "payment_method_id": 1
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 22,
        "type": "internal",
        "public_id": "YHETxCGlb0NmnHK",
        "price": "10.00",
        "order_id": 25,
        "first_name": "test",
        "last_name": "test",
        "phone": "11111111111",
        "email": null,
        "birthday": null,
        "passenger_type": "adult",
        "departure_date": "2024-01-25T09:00:00.000000Z",
        "bus_flight_id": 207,
        "canceled_at": null,
        "cancel_comment": null,
        "status": "pending",
        "seat_change_allowed": true,
        "comment": null,
        "prepayments": [],
        "prepayments_amount": 0,
        "is_processed": false,
        "external_route_name": null,
        "external_ticket_id": null,
        "external_discount_name": null,
        "is_external": false,
        "created_at": "2024-01-25T07:57:29.000000Z",
        "updated_at": "2025-08-06T06:32:46.000000Z"
    }
}
 

Request   

POST integration-api/accept-partially-payment/{ticket}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

ticket   string   

Example: quibusdam

Body Parameters

amount   number   

Amount Example: 100

payment_method_id   integer   

Payment method id Example: 1

Return ticket

Return ticket

Example request:
curl --request PATCH \
    "https://testapi.ticketbus365.com/integration-api/return-ticket/ad" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/return-ticket/ad"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "PATCH",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 22,
        "type": "internal",
        "public_id": "YHETxCGlb0NmnHK",
        "price": "10.00",
        "order_id": 25,
        "first_name": "test",
        "last_name": "test",
        "phone": "11111111111",
        "email": null,
        "birthday": null,
        "passenger_type": "adult",
        "departure_date": "2024-01-25T09:00:00.000000Z",
        "bus_flight_id": 207,
        "canceled_at": null,
        "cancel_comment": null,
        "status": "pending",
        "seat_change_allowed": true,
        "comment": null,
        "is_processed": false,
        "external_route_name": null,
        "external_ticket_id": null,
        "external_discount_name": null,
        "is_external": false,
        "created_at": "2024-01-25T07:57:29.000000Z",
        "updated_at": "2025-08-06T06:32:46.000000Z",
        "penalty": 100
    }
}
 

Request   

PATCH integration-api/return-ticket/{ticket_id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

ticket_id   string   

The ID of the ticket. Example: ad

Profile

Profile

Show profile

requires authentication

Show profile

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/profile" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/profile"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 1000
x-ratelimit-remaining: 999
access-control-allow-origin: *
 

{
    "message": "Unauthorized"
}
 

Request   

GET integration-api/profile

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

System settings

System Setting

Get all currency

Get all currency

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/currencies" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/currencies"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 545,
            "display_name": "XPF",
            "code": "VUV",
            "symbol": "CNY",
            "is_active": true,
            "created_at": "2025-09-25T06:32:23.000000Z",
            "updated_at": "2025-09-25T06:32:23.000000Z"
        },
        {
            "id": 546,
            "display_name": "XOF",
            "code": "SDG",
            "symbol": "PHP",
            "is_active": true,
            "created_at": "2025-09-25T06:32:23.000000Z",
            "updated_at": "2025-09-25T06:32:23.000000Z"
        }
    ]
}
 

Request   

GET integration-api/currencies

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Get all cancel reasons

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/cancel-reasons?per_page=10" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/cancel-reasons"
);

const params = {
    "per_page": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 62,
            "name": "Dr. Augustus Kessler DDS",
            "slug": null
        },
        {
            "id": 63,
            "name": "Easton Tillman",
            "slug": null
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Назад",
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "active": true
            },
            {
                "url": null,
                "label": "Вперед »",
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}
 

Request   

GET integration-api/cancel-reasons

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Query Parameters

per_page   integer   

Items per page Example: 10

Get all payment methods

Get all payment methods

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/payment-methods" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/payment-methods"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 120,
            "name": "spot",
            "display_name": "Miss Lyda Bashirian",
            "logo_path": "Prof. Reid Kertzmann PhD",
            "created_at": "2025-09-25T06:32:24.000000Z",
            "updated_at": "2025-09-25T06:32:24.000000Z"
        },
        {
            "id": 121,
            "name": "cash",
            "display_name": "Obie Hammes",
            "logo_path": "Mekhi Baumbach",
            "created_at": "2025-09-25T06:32:24.000000Z",
            "updated_at": "2025-09-25T06:32:24.000000Z"
        }
    ]
}
 

Request   

GET integration-api/payment-methods

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Tickets

Tickets

Search free tickets

Search free tickets

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/tickets?from_city_id=1&to_city_id=2&from_departure_point_id=1&to_departure_point_id=2&departure_date=2021-10-10&date_range[from]=2021-10-10&date_range[to]=2021-10-20&number_of_passengers=1&return_date=2021-10-10&bus_route_id=1" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/tickets"
);

const params = {
    "from_city_id": "1",
    "to_city_id": "2",
    "from_departure_point_id": "1",
    "to_departure_point_id": "2",
    "departure_date": "2021-10-10",
    "date_range[from]": "2021-10-10",
    "date_range[to]": "2021-10-20",
    "number_of_passengers": "1",
    "return_date": "2021-10-10",
    "bus_route_id": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 207,
            "target_departure_date": null,
            "target_arrival_date": null,
            "target_minutes_in_travel": null,
            "target_from_departure_point_id": 0,
            "target_to_departure_point_id": 0,
            "sale_end_time_before_departure": 0,
            "status": "open",
            "payment_time": 15,
            "sale_depth": 15,
            "number_of_seats": 15,
            "route_name": "Киев-Чернигов",
            "route_number": "1111",
            "route_ticket_hint": null,
            "carrier_name": "test",
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "without_companion_price_percent": 0,
            "selected_seats_prices": null,
            "bus": {
                "id": 148,
                "name": "Автобус",
                "number": "WK 77296",
                "status": "active",
                "schema": {
                    "id": 179,
                    "name": "Автобус",
                    "mark": "VANHOOL",
                    "model": "Astron T917",
                    "number_of_seats": 59,
                    "number_of_floors": 1,
                    "rows": 5,
                    "columns": 17,
                    "items": [
                        {
                            "id": 40093,
                            "type": "seat",
                            "name": "Seat 1",
                            "translations": {
                                "name": {
                                    "en": "Seat 1"
                                }
                            },
                            "seat_number": 55,
                            "row_number": 1,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40094,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 53,
                            "row_number": 1,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40095,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 49,
                            "row_number": 1,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40096,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 45,
                            "row_number": 1,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40097,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 41,
                            "row_number": 1,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40098,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 37,
                            "row_number": 1,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40099,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 33,
                            "row_number": 1,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40100,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 31,
                            "row_number": 1,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40101,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 29,
                            "row_number": 1,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40102,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 25,
                            "row_number": 1,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40103,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 21,
                            "row_number": 1,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40104,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 17,
                            "row_number": 1,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40105,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 13,
                            "row_number": 1,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40106,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 9,
                            "row_number": 1,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40107,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 5,
                            "row_number": 1,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40108,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 1,
                            "row_number": 1,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40109,
                            "type": "driver_seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 1,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40110,
                            "type": "seat",
                            "name": "Seat 18",
                            "translations": {
                                "name": {
                                    "en": "Seat 18"
                                }
                            },
                            "seat_number": 56,
                            "row_number": 2,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40111,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 54,
                            "row_number": 2,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40112,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 50,
                            "row_number": 2,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40113,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 46,
                            "row_number": 2,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40114,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 42,
                            "row_number": 2,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40115,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 38,
                            "row_number": 2,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40116,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 34,
                            "row_number": 2,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40117,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 32,
                            "row_number": 2,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40118,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 30,
                            "row_number": 2,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40119,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 26,
                            "row_number": 2,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40120,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 22,
                            "row_number": 2,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40121,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 18,
                            "row_number": 2,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40122,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 14,
                            "row_number": 2,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40123,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 10,
                            "row_number": 2,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40124,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 6,
                            "row_number": 2,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40125,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 2,
                            "row_number": 2,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40126,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 2,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40127,
                            "type": "seat",
                            "name": "Seat 35",
                            "translations": {
                                "name": {
                                    "en": "Seat 35"
                                }
                            },
                            "seat_number": 57,
                            "row_number": 3,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40128,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40129,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40130,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40131,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40132,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40133,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40134,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40135,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40136,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40137,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40138,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40139,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40140,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40141,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40142,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40143,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40144,
                            "type": "seat",
                            "name": "Seat 52",
                            "translations": {
                                "name": {
                                    "en": "Seat 52"
                                }
                            },
                            "seat_number": 58,
                            "row_number": 4,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40145,
                            "type": "none",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40146,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 51,
                            "row_number": 4,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40147,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 47,
                            "row_number": 4,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40148,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 43,
                            "row_number": 4,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40149,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 39,
                            "row_number": 4,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40150,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 35,
                            "row_number": 4,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40151,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40152,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40153,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 27,
                            "row_number": 4,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40154,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 23,
                            "row_number": 4,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40155,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 19,
                            "row_number": 4,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40156,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 15,
                            "row_number": 4,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40157,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 11,
                            "row_number": 4,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40158,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 7,
                            "row_number": 4,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40159,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 3,
                            "row_number": 4,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40160,
                            "type": "special",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40161,
                            "type": "seat",
                            "name": "Seat 69",
                            "translations": {
                                "name": {
                                    "en": "Seat 69"
                                }
                            },
                            "seat_number": 59,
                            "row_number": 5,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40162,
                            "type": "none",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40163,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 52,
                            "row_number": 5,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40164,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 48,
                            "row_number": 5,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40165,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 44,
                            "row_number": 5,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40166,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 40,
                            "row_number": 5,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40167,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 36,
                            "row_number": 5,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40168,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40169,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40170,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 28,
                            "row_number": 5,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40171,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 24,
                            "row_number": 5,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40172,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 20,
                            "row_number": 5,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40173,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 16,
                            "row_number": 5,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40174,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 12,
                            "row_number": 5,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40175,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 8,
                            "row_number": 5,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40176,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 4,
                            "row_number": 5,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40177,
                            "type": "special",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 17,
                            "floor_number": 1
                        }
                    ],
                    "created_at": "2024-02-16T19:06:33.000000Z",
                    "updated_at": "2025-06-11T11:21:31.000000Z"
                },
                "services": [
                    {
                        "id": 15,
                        "name": "wi-fi",
                        "translations": {
                            "name": {
                                "ua": "wi-fi",
                                "pl": "wi-fi",
                                "en": "wi-fi"
                            }
                        },
                        "icon_name": "wi-fi",
                        "created_at": "2023-11-02T12:08:09.000000Z",
                        "updated_at": "2023-11-02T12:08:09.000000Z"
                    },
                    {
                        "id": 16,
                        "name": "USB-зарядки",
                        "translations": {
                            "name": {
                                "ua": "Індивідуальні  USB-зарядки",
                                "pl": "USB-зарядки",
                                "en": "USB-зарядки"
                            }
                        },
                        "icon_name": "индивидуальные  USB-зарядки",
                        "created_at": "2024-01-20T10:58:51.000000Z",
                        "updated_at": "2024-04-11T11:51:19.000000Z"
                    }
                ],
                "created_at": "2024-02-16T19:04:00.000000Z",
                "updated_at": "2024-05-17T18:26:50.000000Z"
            },
            "driver": {
                "id": 519,
                "first_name": "Петро",
                "last_name": "Шевченко",
                "middle_name": "Петрович",
                "full_name": "Петро Шевченко Петрович",
                "work_phone": "38063999999"
            },
            "dispatcher": null,
            "occupiedSeats": [
                {
                    "id": 22,
                    "bus_flight_id": 207,
                    "from_departure_point_id": 87,
                    "to_departure_point_id": 88,
                    "seat_number": 9,
                    "type": "reserved",
                    "created_at": "2024-01-25T07:57:29.000000Z",
                    "updated_at": "2024-02-19T12:32:03.000000Z"
                }
            ],
            "baggage_transportation_conditions": [
                {
                    "id": 164,
                    "name": "Hand baggage (free)",
                    "translations": {
                        "name": {
                            "ua": "Ручна поклажа (безкоштовно)",
                            "pl": "Bagaż podręczny (bezpłatny)",
                            "en": "Hand baggage (free)"
                        }
                    },
                    "prices": [
                        {
                            "currency_id": 88,
                            "price": 0
                        },
                        {
                            "currency_id": 89,
                            "price": 0
                        }
                    ],
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-01-19T11:59:02.000000Z"
                }
            ],
            "schedules": [
                {
                    "id": 1631,
                    "departure_point_id": 87,
                    "departure_point": {
                        "id": 87,
                        "name": "Автостанция \"Киев\",улица С.Петлюры 32",
                        "translations": {
                            "name": {
                                "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                                "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                                "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                                "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
                            }
                        },
                        "city": {
                            "id": 267,
                            "name": "Киев",
                            "translations": {
                                "name": {
                                    "ua": "Київ",
                                    "pl": "Kijów",
                                    "en": "Kyiv",
                                    "ru": "Киев"
                                }
                            },
                            "population": null,
                            "number_of_bus_routes": 0,
                            "visibility": true,
                            "country_id": 6,
                            "created_at": "2023-11-02T11:51:05.000000Z",
                            "updated_at": "2024-02-18T14:28:39.000000Z"
                        },
                        "visibility": true,
                        "created_at": "2023-11-02T11:52:18.000000Z",
                        "updated_at": "2024-03-23T12:23:48.000000Z"
                    },
                    "arrival_time": "12:00",
                    "departure_time": "12:00",
                    "days_in_road": 0,
                    "platform": null,
                    "has_landing": true,
                    "has_disembarkation": false,
                    "is_connecting": false,
                    "is_connecting_start_endpoint": false,
                    "position": 0,
                    "sale_status": "open",
                    "is_active": true,
                    "has_transfer": false,
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-04-22T06:39:22.000000Z"
                },
                {
                    "id": 1632,
                    "departure_point_id": 88,
                    "departure_point": {
                        "id": 88,
                        "name": "Голливуд",
                        "translations": {
                            "name": {
                                "ua": "Голливуд",
                                "pl": "Голливуд",
                                "en": "Голливуд"
                            }
                        },
                        "city": {
                            "id": 268,
                            "name": "Чернигов",
                            "translations": {
                                "name": {
                                    "ua": "Чернігів",
                                    "en": "Chernihiv",
                                    "pl": "Czernihów",
                                    "ru": "Чернигов"
                                }
                            },
                            "population": null,
                            "number_of_bus_routes": 0,
                            "visibility": true,
                            "country_id": 6,
                            "created_at": "2023-11-02T11:51:37.000000Z",
                            "updated_at": "2025-07-17T06:32:14.000000Z"
                        },
                        "visibility": true,
                        "created_at": "2023-11-02T11:53:33.000000Z",
                        "updated_at": "2023-11-02T11:53:33.000000Z"
                    },
                    "arrival_time": "15:00",
                    "departure_time": "15:00",
                    "days_in_road": 0,
                    "platform": null,
                    "has_landing": false,
                    "has_disembarkation": true,
                    "is_connecting": false,
                    "is_connecting_start_endpoint": false,
                    "position": 1,
                    "sale_status": "open",
                    "is_active": true,
                    "has_transfer": false,
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-04-22T06:39:22.000000Z"
                }
            ],
            "payment_methods": [
                {
                    "id": 1,
                    "name": "stripe",
                    "display_name": "Оплата через Stripe",
                    "logo_path": null,
                    "created_at": "2023-10-27T07:44:26.000000Z",
                    "updated_at": "2023-11-03T07:53:11.000000Z"
                },
                {
                    "id": 2,
                    "name": "liqpay",
                    "display_name": "Оплата через LiqPay",
                    "logo_path": null,
                    "created_at": "2023-10-27T07:44:26.000000Z",
                    "updated_at": "2023-11-03T07:53:11.000000Z"
                },
                {
                    "id": 3,
                    "name": "spot",
                    "display_name": "Оплата на месте",
                    "logo_path": null,
                    "created_at": "2023-10-27T07:44:26.000000Z",
                    "updated_at": "2023-11-03T07:53:11.000000Z"
                }
            ],
            "discounts": [],
            "carrier": {
                "id": 1,
                "name": "test",
                "hotline_phone": null,
                "edrpou": null,
                "disclaimer": null,
                "translations": {
                    "disclaimer": []
                }
            },
            "prices": [
                {
                    "id": 20172,
                    "from_departure_point_id": 87,
                    "to_departure_point_id": 88,
                    "price": [
                        {
                            "amount": 10,
                            "currency_id": 88
                        },
                        {
                            "amount": 10,
                            "currency_id": 89
                        },
                        {
                            "amount": 0,
                            "currency_id": 90
                        },
                        {
                            "amount": 0,
                            "currency_id": 91
                        }
                    ],
                    "is_active": true,
                    "is_forbidden": false
                }
            ],
            "created_at": "2024-01-19T11:59:02.000000Z",
            "updated_at": "2024-04-22T06:40:52.000000Z"
        },
        {
            "id": 207,
            "target_departure_date": null,
            "target_arrival_date": null,
            "target_minutes_in_travel": null,
            "target_from_departure_point_id": 0,
            "target_to_departure_point_id": 0,
            "sale_end_time_before_departure": 0,
            "status": "open",
            "payment_time": 15,
            "sale_depth": 15,
            "number_of_seats": 15,
            "route_name": "Киев-Чернигов",
            "route_number": "1111",
            "route_ticket_hint": null,
            "carrier_name": "test",
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "without_companion_price_percent": 0,
            "selected_seats_prices": null,
            "bus": {
                "id": 148,
                "name": "Автобус",
                "number": "WK 77296",
                "status": "active",
                "schema": {
                    "id": 179,
                    "name": "Автобус",
                    "mark": "VANHOOL",
                    "model": "Astron T917",
                    "number_of_seats": 59,
                    "number_of_floors": 1,
                    "rows": 5,
                    "columns": 17,
                    "items": [
                        {
                            "id": 40093,
                            "type": "seat",
                            "name": "Seat 1",
                            "translations": {
                                "name": {
                                    "en": "Seat 1"
                                }
                            },
                            "seat_number": 55,
                            "row_number": 1,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40094,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 53,
                            "row_number": 1,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40095,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 49,
                            "row_number": 1,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40096,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 45,
                            "row_number": 1,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40097,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 41,
                            "row_number": 1,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40098,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 37,
                            "row_number": 1,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40099,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 33,
                            "row_number": 1,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40100,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 31,
                            "row_number": 1,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40101,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 29,
                            "row_number": 1,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40102,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 25,
                            "row_number": 1,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40103,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 21,
                            "row_number": 1,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40104,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 17,
                            "row_number": 1,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40105,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 13,
                            "row_number": 1,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40106,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 9,
                            "row_number": 1,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40107,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 5,
                            "row_number": 1,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40108,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 1,
                            "row_number": 1,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40109,
                            "type": "driver_seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 1,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40110,
                            "type": "seat",
                            "name": "Seat 18",
                            "translations": {
                                "name": {
                                    "en": "Seat 18"
                                }
                            },
                            "seat_number": 56,
                            "row_number": 2,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40111,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 54,
                            "row_number": 2,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40112,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 50,
                            "row_number": 2,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40113,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 46,
                            "row_number": 2,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40114,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 42,
                            "row_number": 2,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40115,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 38,
                            "row_number": 2,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40116,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 34,
                            "row_number": 2,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40117,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 32,
                            "row_number": 2,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40118,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 30,
                            "row_number": 2,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40119,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 26,
                            "row_number": 2,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40120,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 22,
                            "row_number": 2,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40121,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 18,
                            "row_number": 2,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40122,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 14,
                            "row_number": 2,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40123,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 10,
                            "row_number": 2,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40124,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 6,
                            "row_number": 2,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40125,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 2,
                            "row_number": 2,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40126,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 2,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40127,
                            "type": "seat",
                            "name": "Seat 35",
                            "translations": {
                                "name": {
                                    "en": "Seat 35"
                                }
                            },
                            "seat_number": 57,
                            "row_number": 3,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40128,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40129,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40130,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40131,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40132,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40133,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40134,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40135,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40136,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40137,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40138,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40139,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40140,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40141,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40142,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40143,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 3,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40144,
                            "type": "seat",
                            "name": "Seat 52",
                            "translations": {
                                "name": {
                                    "en": "Seat 52"
                                }
                            },
                            "seat_number": 58,
                            "row_number": 4,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40145,
                            "type": "none",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40146,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 51,
                            "row_number": 4,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40147,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 47,
                            "row_number": 4,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40148,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 43,
                            "row_number": 4,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40149,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 39,
                            "row_number": 4,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40150,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 35,
                            "row_number": 4,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40151,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40152,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40153,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 27,
                            "row_number": 4,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40154,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 23,
                            "row_number": 4,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40155,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 19,
                            "row_number": 4,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40156,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 15,
                            "row_number": 4,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40157,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 11,
                            "row_number": 4,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40158,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 7,
                            "row_number": 4,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40159,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 3,
                            "row_number": 4,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40160,
                            "type": "special",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 4,
                            "column_number": 17,
                            "floor_number": 1
                        },
                        {
                            "id": 40161,
                            "type": "seat",
                            "name": "Seat 69",
                            "translations": {
                                "name": {
                                    "en": "Seat 69"
                                }
                            },
                            "seat_number": 59,
                            "row_number": 5,
                            "column_number": 1,
                            "floor_number": 1
                        },
                        {
                            "id": 40162,
                            "type": "none",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 2,
                            "floor_number": 1
                        },
                        {
                            "id": 40163,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 52,
                            "row_number": 5,
                            "column_number": 3,
                            "floor_number": 1
                        },
                        {
                            "id": 40164,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 48,
                            "row_number": 5,
                            "column_number": 4,
                            "floor_number": 1
                        },
                        {
                            "id": 40165,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 44,
                            "row_number": 5,
                            "column_number": 5,
                            "floor_number": 1
                        },
                        {
                            "id": 40166,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 40,
                            "row_number": 5,
                            "column_number": 6,
                            "floor_number": 1
                        },
                        {
                            "id": 40167,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 36,
                            "row_number": 5,
                            "column_number": 7,
                            "floor_number": 1
                        },
                        {
                            "id": 40168,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 8,
                            "floor_number": 1
                        },
                        {
                            "id": 40169,
                            "type": "aisle",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 9,
                            "floor_number": 1
                        },
                        {
                            "id": 40170,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 28,
                            "row_number": 5,
                            "column_number": 10,
                            "floor_number": 1
                        },
                        {
                            "id": 40171,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 24,
                            "row_number": 5,
                            "column_number": 11,
                            "floor_number": 1
                        },
                        {
                            "id": 40172,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 20,
                            "row_number": 5,
                            "column_number": 12,
                            "floor_number": 1
                        },
                        {
                            "id": 40173,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 16,
                            "row_number": 5,
                            "column_number": 13,
                            "floor_number": 1
                        },
                        {
                            "id": 40174,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 12,
                            "row_number": 5,
                            "column_number": 14,
                            "floor_number": 1
                        },
                        {
                            "id": 40175,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 8,
                            "row_number": 5,
                            "column_number": 15,
                            "floor_number": 1
                        },
                        {
                            "id": 40176,
                            "type": "seat",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 4,
                            "row_number": 5,
                            "column_number": 16,
                            "floor_number": 1
                        },
                        {
                            "id": 40177,
                            "type": "special",
                            "name": "",
                            "translations": {
                                "name": []
                            },
                            "seat_number": 0,
                            "row_number": 5,
                            "column_number": 17,
                            "floor_number": 1
                        }
                    ],
                    "created_at": "2024-02-16T19:06:33.000000Z",
                    "updated_at": "2025-06-11T11:21:31.000000Z"
                },
                "services": [
                    {
                        "id": 15,
                        "name": "wi-fi",
                        "translations": {
                            "name": {
                                "ua": "wi-fi",
                                "pl": "wi-fi",
                                "en": "wi-fi"
                            }
                        },
                        "icon_name": "wi-fi",
                        "created_at": "2023-11-02T12:08:09.000000Z",
                        "updated_at": "2023-11-02T12:08:09.000000Z"
                    },
                    {
                        "id": 16,
                        "name": "USB-зарядки",
                        "translations": {
                            "name": {
                                "ua": "Індивідуальні  USB-зарядки",
                                "pl": "USB-зарядки",
                                "en": "USB-зарядки"
                            }
                        },
                        "icon_name": "индивидуальные  USB-зарядки",
                        "created_at": "2024-01-20T10:58:51.000000Z",
                        "updated_at": "2024-04-11T11:51:19.000000Z"
                    }
                ],
                "created_at": "2024-02-16T19:04:00.000000Z",
                "updated_at": "2024-05-17T18:26:50.000000Z"
            },
            "driver": {
                "id": 519,
                "first_name": "Петро",
                "last_name": "Шевченко",
                "middle_name": "Петрович",
                "full_name": "Петро Шевченко Петрович",
                "work_phone": "38063999999"
            },
            "dispatcher": null,
            "occupiedSeats": [
                {
                    "id": 22,
                    "bus_flight_id": 207,
                    "from_departure_point_id": 87,
                    "to_departure_point_id": 88,
                    "seat_number": 9,
                    "type": "reserved",
                    "created_at": "2024-01-25T07:57:29.000000Z",
                    "updated_at": "2024-02-19T12:32:03.000000Z"
                }
            ],
            "baggage_transportation_conditions": [
                {
                    "id": 164,
                    "name": "Hand baggage (free)",
                    "translations": {
                        "name": {
                            "ua": "Ручна поклажа (безкоштовно)",
                            "pl": "Bagaż podręczny (bezpłatny)",
                            "en": "Hand baggage (free)"
                        }
                    },
                    "prices": [
                        {
                            "currency_id": 88,
                            "price": 0
                        },
                        {
                            "currency_id": 89,
                            "price": 0
                        }
                    ],
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-01-19T11:59:02.000000Z"
                }
            ],
            "schedules": [
                {
                    "id": 1631,
                    "departure_point_id": 87,
                    "departure_point": {
                        "id": 87,
                        "name": "Автостанция \"Киев\",улица С.Петлюры 32",
                        "translations": {
                            "name": {
                                "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                                "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                                "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                                "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
                            }
                        },
                        "city": {
                            "id": 267,
                            "name": "Киев",
                            "translations": {
                                "name": {
                                    "ua": "Київ",
                                    "pl": "Kijów",
                                    "en": "Kyiv",
                                    "ru": "Киев"
                                }
                            },
                            "population": null,
                            "number_of_bus_routes": 0,
                            "visibility": true,
                            "country_id": 6,
                            "created_at": "2023-11-02T11:51:05.000000Z",
                            "updated_at": "2024-02-18T14:28:39.000000Z"
                        },
                        "visibility": true,
                        "created_at": "2023-11-02T11:52:18.000000Z",
                        "updated_at": "2024-03-23T12:23:48.000000Z"
                    },
                    "arrival_time": "12:00",
                    "departure_time": "12:00",
                    "days_in_road": 0,
                    "platform": null,
                    "has_landing": true,
                    "has_disembarkation": false,
                    "is_connecting": false,
                    "is_connecting_start_endpoint": false,
                    "position": 0,
                    "sale_status": "open",
                    "is_active": true,
                    "has_transfer": false,
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-04-22T06:39:22.000000Z"
                },
                {
                    "id": 1632,
                    "departure_point_id": 88,
                    "departure_point": {
                        "id": 88,
                        "name": "Голливуд",
                        "translations": {
                            "name": {
                                "ua": "Голливуд",
                                "pl": "Голливуд",
                                "en": "Голливуд"
                            }
                        },
                        "city": {
                            "id": 268,
                            "name": "Чернигов",
                            "translations": {
                                "name": {
                                    "ua": "Чернігів",
                                    "en": "Chernihiv",
                                    "pl": "Czernihów",
                                    "ru": "Чернигов"
                                }
                            },
                            "population": null,
                            "number_of_bus_routes": 0,
                            "visibility": true,
                            "country_id": 6,
                            "created_at": "2023-11-02T11:51:37.000000Z",
                            "updated_at": "2025-07-17T06:32:14.000000Z"
                        },
                        "visibility": true,
                        "created_at": "2023-11-02T11:53:33.000000Z",
                        "updated_at": "2023-11-02T11:53:33.000000Z"
                    },
                    "arrival_time": "15:00",
                    "departure_time": "15:00",
                    "days_in_road": 0,
                    "platform": null,
                    "has_landing": false,
                    "has_disembarkation": true,
                    "is_connecting": false,
                    "is_connecting_start_endpoint": false,
                    "position": 1,
                    "sale_status": "open",
                    "is_active": true,
                    "has_transfer": false,
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-04-22T06:39:22.000000Z"
                }
            ],
            "payment_methods": [
                {
                    "id": 1,
                    "name": "stripe",
                    "display_name": "Оплата через Stripe",
                    "logo_path": null,
                    "created_at": "2023-10-27T07:44:26.000000Z",
                    "updated_at": "2023-11-03T07:53:11.000000Z"
                },
                {
                    "id": 2,
                    "name": "liqpay",
                    "display_name": "Оплата через LiqPay",
                    "logo_path": null,
                    "created_at": "2023-10-27T07:44:26.000000Z",
                    "updated_at": "2023-11-03T07:53:11.000000Z"
                },
                {
                    "id": 3,
                    "name": "spot",
                    "display_name": "Оплата на месте",
                    "logo_path": null,
                    "created_at": "2023-10-27T07:44:26.000000Z",
                    "updated_at": "2023-11-03T07:53:11.000000Z"
                }
            ],
            "discounts": [],
            "carrier": {
                "id": 1,
                "name": "test",
                "hotline_phone": null,
                "edrpou": null,
                "disclaimer": null,
                "translations": {
                    "disclaimer": []
                }
            },
            "prices": [
                {
                    "id": 20172,
                    "from_departure_point_id": 87,
                    "to_departure_point_id": 88,
                    "price": [
                        {
                            "amount": 10,
                            "currency_id": 88
                        },
                        {
                            "amount": 10,
                            "currency_id": 89
                        },
                        {
                            "amount": 0,
                            "currency_id": 90
                        },
                        {
                            "amount": 0,
                            "currency_id": 91
                        }
                    ],
                    "is_active": true,
                    "is_forbidden": false
                }
            ],
            "created_at": "2024-01-19T11:59:02.000000Z",
            "updated_at": "2024-04-22T06:40:52.000000Z"
        }
    ],
    "return_flights_data": []
}
 

Request   

GET integration-api/tickets

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Query Parameters

from_city_id   integer  optional  

From city id Example: 1

to_city_id   integer  optional  

To city id Example: 2

from_departure_point_id   string  optional  

From departure point id Example: 1

to_departure_point_id   string  optional  

To departure point id Example: 2

departure_date   string   

Departure date Example: 2021-10-10

date_range   string[]   

Date range

date_range.from   string   

Date range from Example: 2021-10-10

date_range.to   string   

Date range to Example: 2021-10-20

number_of_passengers   string   

Number of passengers Example: 1

return_date   string   

Return date Example: 2021-10-10

bus_route_id   string   

Filter by bus route id Example: 1

Get single flight details

Get flight details

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/flight-details/1/1/2" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/flight-details/1/1/2"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 1000
x-ratelimit-remaining: 996
access-control-allow-origin: *
 

{
    "message": "Unauthorized"
}
 

Request   

GET integration-api/flight-details/{id}/{fromDeparturePointId}/{toDeparturePointId}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

id   string   

Bus flight id Example: 1

fromDeparturePointId   string   

From departure point id Example: 1

toDeparturePointId   string   

To departure point id Example: 2

Buy ticket

Buy ticket

Example request:
curl --request POST \
    "https://testapi.ticketbus365.com/integration-api/tickets" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua" \
    --data "{
    \"there\": {
        \"agent_id\": 1,
        \"bus_flight_id\": 1,
        \"from_departure_point_id\": 1,
        \"to_departure_point_id\": 2,
        \"passengers\": [
            {
                \"first_name\": \"John\",
                \"last_name\": \"Doe\",
                \"phone_number\": \"123456789\",
                \"email\": \"example@example.com\",
                \"birthday\": \"1990-10-10\",
                \"passenger_type\": \"adult\",
                \"baggage\": [
                    {
                        \"id\": 1,
                        \"quantity\": 1
                    }
                ]
            }
        ],
        \"seat_numbers\": [
            1,
            2
        ],
        \"without_companion\": true
    },
    \"back\": {
        \"bus_flight_id\": 1,
        \"from_departure_point_id\": 1,
        \"to_departure_point_id\": 2,
        \"passengers\": [
            {
                \"first_name\": \"John\",
                \"last_name\": \"Doe\",
                \"phone_number\": \"123456789\",
                \"email\": \"example@example.com\",
                \"birthday\": \"1990-10-10\",
                \"passenger_type\": \"adult\",
                \"comment\": \"Some comment\",
                \"discount_id\": 1,
                \"baggage\": [
                    {
                        \"id\": 1,
                        \"quantity\": 1
                    }
                ]
            }
        ],
        \"seat_numbers\": [
            1,
            2
        ],
        \"without_companion\": true
    },
    \"payment_method_id\": 1,
    \"currency_id\": 1,
    \"email\": \"some@example.com\",
    \"phone\": \"123456789\",
    \"send_tickets_to_email\": true
}"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/tickets"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

let body = {
    "there": {
        "agent_id": 1,
        "bus_flight_id": 1,
        "from_departure_point_id": 1,
        "to_departure_point_id": 2,
        "passengers": [
            {
                "first_name": "John",
                "last_name": "Doe",
                "phone_number": "123456789",
                "email": "example@example.com",
                "birthday": "1990-10-10",
                "passenger_type": "adult",
                "baggage": [
                    {
                        "id": 1,
                        "quantity": 1
                    }
                ]
            }
        ],
        "seat_numbers": [
            1,
            2
        ],
        "without_companion": true
    },
    "back": {
        "bus_flight_id": 1,
        "from_departure_point_id": 1,
        "to_departure_point_id": 2,
        "passengers": [
            {
                "first_name": "John",
                "last_name": "Doe",
                "phone_number": "123456789",
                "email": "example@example.com",
                "birthday": "1990-10-10",
                "passenger_type": "adult",
                "comment": "Some comment",
                "discount_id": 1,
                "baggage": [
                    {
                        "id": 1,
                        "quantity": 1
                    }
                ]
            }
        ],
        "seat_numbers": [
            1,
            2
        ],
        "without_companion": true
    },
    "payment_method_id": 1,
    "currency_id": 1,
    "email": "some@example.com",
    "phone": "123456789",
    "send_tickets_to_email": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": null,
        "public_id": "",
        "paid_at": null,
        "agent_id": null,
        "status": null,
        "total_price": 110.54,
        "payment_on_the_spot": null,
        "expired_at": null,
        "created_at": null,
        "updated_at": null
    },
    "payment_method_data": {
        "data": "array",
        "type": "string"
    }
}
 

Request   

POST integration-api/tickets

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

Body Parameters

there   string[]   

Bus flight id

agent_id   integer  optional  

Agent id Example: 1

bus_flight_id   integer   

Bus flight id Example: 1

from_departure_point_id   integer   

From departure point id Example: 1

to_departure_point_id   integer   

To departure point id Example: 2

passengers   string[]   

Passengers

*   object  optional  
first_name   string   

First name Example: John

last_name   string   

Last name Example: Doe

phone_number   string   

Phone number Example: 123456789

email   string  optional  

Email Example: example@example.com

birthday   string  optional  

Birthday (required if child) Example: 1990-10-10

passenger_type   string   

Passenger type adult or child Example: adult

comment   string  optional  

Comment Example: Some comment

discount_id   integer  optional  

Discount id Example: 1

baggage   string[]  optional  

Baggage

*   object  optional  
id   integer   

Baggage id Example: 1

quantity   integer   

Baggage quantity Example: 1

seat_numbers   string[]  optional  

Seat numbers

without_companion   boolean  optional  

Without companion Example: true

back   string[]  optional  

Bus flight id. Structure equal "there"

payment_method_id   string   

Payment method id Example: 1

currency_id   string  optional  

Currency id. Required for integration Example: 1

email   string  optional  

Email. Required if guest Example: some@example.com

phone   string  optional  

Phone. Required if guest Example: 123456789

send_tickets_to_email   string  optional  

Send tickets to email Example: true

Show my ticket

Get ticket by id

Example request:
curl --request GET \
    --get "https://testapi.ticketbus365.com/integration-api/ticket/z2zcwP3Z" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --header "locale: ua"
const url = new URL(
    "https://testapi.ticketbus365.com/integration-api/ticket/z2zcwP3Z"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "locale": "ua",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "id": 22,
        "type": "internal",
        "public_id": "YHETxCGlb0NmnHK",
        "price": "10.00",
        "currency": {
            "id": 88,
            "display_name": "Гривня",
            "code": "UAH",
            "symbol": "₴",
            "is_active": true,
            "created_at": "2023-11-02T11:57:10.000000Z",
            "updated_at": "2023-11-02T11:57:10.000000Z"
        },
        "order": {
            "id": 25,
            "public_id": "kOKT9MVfb048GOi",
            "paid_at": null,
            "agent_id": null,
            "status": "pending",
            "total_price": "10.00",
            "payment_on_the_spot": true,
            "expired_at": "2024-01-25T08:12:29.000000Z",
            "created_at": "2024-01-25T07:57:29.000000Z",
            "updated_at": "2024-01-25T07:57:29.000000Z"
        },
        "order_id": 25,
        "bus_flight": {
            "id": 207,
            "departure_date": "2024-01-25T10:00:00.000000Z",
            "sale_end_time_before_departure": 0,
            "arrival_date": "2024-01-25T13:00:00.000000Z",
            "hours_in_travel": 3,
            "bus": {
                "id": 148,
                "name": "Автобус",
                "number": "WK 77296",
                "status": "active",
                "created_at": "2024-02-16T19:04:00.000000Z",
                "updated_at": "2024-05-17T18:26:50.000000Z"
            },
            "status": "open",
            "payment_time": 15,
            "sale_depth": 15,
            "number_of_seats": 15,
            "carrier_name": "тест",
            "seat_selection_allowed": true,
            "seat_selection_not_allowed_date_from": null,
            "seat_selection_not_allowed_date_to": null,
            "without_companion": true,
            "min_price": [
                {
                    "currency_id": 89,
                    "price": "10"
                },
                {
                    "currency_id": 88,
                    "price": "10"
                }
            ],
            "schedules": [
                {
                    "id": 1631,
                    "departure_point_id": 87,
                    "departure_point": {
                        "id": 87,
                        "name": "Автостанция \"Киев\",улица С.Петлюры 32",
                        "translations": {
                            "name": {
                                "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                                "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                                "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                                "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
                            }
                        },
                        "visibility": true,
                        "created_at": "2023-11-02T11:52:18.000000Z",
                        "updated_at": "2024-03-23T12:23:48.000000Z"
                    },
                    "arrival_time": "12:00",
                    "departure_time": "12:00",
                    "days_in_road": 0,
                    "platform": null,
                    "has_landing": true,
                    "has_disembarkation": false,
                    "is_connecting": false,
                    "is_connecting_start_endpoint": false,
                    "connecting_bus_flight": null,
                    "position": 0,
                    "sale_status": "open",
                    "is_active": true,
                    "has_transfer": false,
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-04-22T06:39:22.000000Z"
                },
                {
                    "id": 1632,
                    "departure_point_id": 88,
                    "departure_point": {
                        "id": 88,
                        "name": "Голливуд",
                        "translations": {
                            "name": {
                                "ua": "Голливуд",
                                "pl": "Голливуд",
                                "en": "Голливуд"
                            }
                        },
                        "visibility": true,
                        "created_at": "2023-11-02T11:53:33.000000Z",
                        "updated_at": "2023-11-02T11:53:33.000000Z"
                    },
                    "arrival_time": "15:00",
                    "departure_time": "15:00",
                    "days_in_road": 0,
                    "platform": null,
                    "has_landing": false,
                    "has_disembarkation": true,
                    "is_connecting": false,
                    "is_connecting_start_endpoint": false,
                    "connecting_bus_flight": null,
                    "position": 1,
                    "sale_status": "open",
                    "is_active": true,
                    "has_transfer": false,
                    "created_at": "2024-01-19T11:59:02.000000Z",
                    "updated_at": "2024-04-22T06:39:22.000000Z"
                }
            ],
            "forbidden_sale_date_from": null,
            "forbidden_sale_date_to": null,
            "created_at": "2024-01-19T11:59:02.000000Z",
            "updated_at": "2024-04-22T06:40:52.000000Z"
        },
        "from_departure_point": {
            "id": 87,
            "name": "Автостанция \"Киев\",улица С.Петлюры 32",
            "translations": {
                "name": {
                    "ua": "Автостанція \"Київ\", вул. С. Петлюри 32",
                    "pl": "Dworzec autobusowy \"Kyiv\",ulica S.Petlyury 32",
                    "en": "Bus station \"Kyiv\",S.Petlury 32 street",
                    "ru": "Автостанция \"Киев\",улица С.Петлюры 32"
                }
            },
            "visibility": true,
            "created_at": "2023-11-02T11:52:18.000000Z",
            "updated_at": "2024-03-23T12:23:48.000000Z"
        },
        "to_departure_point": {
            "id": 88,
            "name": "Голливуд",
            "translations": {
                "name": {
                    "ua": "Голливуд",
                    "pl": "Голливуд",
                    "en": "Голливуд"
                }
            },
            "visibility": true,
            "created_at": "2023-11-02T11:53:33.000000Z",
            "updated_at": "2023-11-02T11:53:33.000000Z"
        },
        "first_name": "test",
        "last_name": "test",
        "phone": "11111111111",
        "email": null,
        "birthday": null,
        "passenger_type": "adult",
        "departure_date": "2024-01-25T09:00:00.000000Z",
        "occupied_seats": [
            {
                "id": 22,
                "bus_flight_id": 207,
                "from_departure_point_id": 87,
                "to_departure_point_id": 88,
                "seat_number": 9,
                "type": "reserved",
                "created_at": "2024-01-25T07:57:29.000000Z",
                "updated_at": "2024-02-19T12:32:03.000000Z"
            }
        ],
        "bus_flight_id": 207,
        "canceled_at": null,
        "cancel_comment": null,
        "status": "pending",
        "seat_change_allowed": true,
        "comment": null,
        "prepayments": [],
        "prepayments_amount": 0,
        "is_processed": false,
        "external_route_name": null,
        "external_ticket_id": null,
        "external_discount_name": null,
        "is_external": false,
        "created_at": "2024-01-25T07:57:29.000000Z",
        "updated_at": "2025-08-06T06:32:46.000000Z"
    }
}
 

Request   

GET integration-api/ticket/{id}

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

locale      

Example: ua

URL Parameters

id   string   

Ticket public id Example: z2zcwP3Z