Table of contents

Things to know:

Authentication

Authentications are performed based on the accountId of the user and the respective apiKey.

{
    "accountId": "2",
    "apiKey":"o5ic8IZCZYPGgmgh"
}

apiKey

apiKey is 16 character length key and it is required for all API calls

Endpoints

All API requests should be made to: http://restapi.manage-booking.com/

Note: All data is case-sensitive. Language, apiKey and other values are case sensitive. For example, "test" and "Test" are considered two different words.

POST request:

Methods to retrieve data from the API require a POST request

Code expamles - PHP:

Example data Home method (POST):

include("curlLib/curlWrap_v1.php");

// ************************** Get popular destinations  ********************

$entity = "homepage";
$input['data'] = array(
"accountId" => "2",
"apiKey" => "o5ic8IZCZYPGgmgh",
"language" => "en",
"popularDestinations" => "1"
);
$method = "POST";
$contentType = "application/json";
$input = json_encode($input);

$apiResult = curlWrap($entity, $input, $method, $contentType);
$apiResult = json_decode($apiResult, TRUE);

echo '<pre>';
print_r($apiResult);
echo '</pre>';
            

"accountID" and "apiKey" are required for all Api calls.

"language": en me hr si ru de nl fr it cz sk hu pl

Optional "countAccommodation" parameter count accommodations per destination.

Optional "lowestPrice" parameter load lowest prices for accommodation.

Note: Using "lowestPrice" and "countAccommodation" can increase response load time.

Example data Search method (POST)

include("curlLib/curlWrap_v1.php");

// ************************** Accommodation listing ********************

$entity = "search";
$input['data'] = array(
"accountId" => "2",
"apiKey" => "o5ic8IZCZYPGgmgh",
"language" => "en",
"preview" => "1"
);
$method = "POST";
$contentType = "application/json";
$input = json_encode($input);

$apiResult = curlWrap($entity, $input, $method, $contentType);
$apiResult = json_decode($apiResult, TRUE);

echo '<pre>';
print_r($apiResult);
echo '</pre>';

"accountID" and "apiKey" are required for all Api calls.

"language": en me hr si ru de nl fr it cz sk hu pl

"propertyType": apartment hotel villa authentic accommodation youth hostel houses with pool rooms tourist resorts holiday houses bed and breakfast

Optional "lowestPrice" parameter load lowest prices for accommodation.

Optional "showWithoutLowestPrice" parameter load properties even if they don't have lowest prices for accommodation.

Example data Details method (POST):

include("curlLib/curlWrap_v1.php");

// ************************** Accommodation details ********************

$entity = "details";

$input['data'] = array(
"accountId" => "2",
"apiKey" => "o5ic8IZCZYPGgmgh",
"language" => "en",
"propertyId" => "1598",
"preview" => "1"
);

$method = "POST";
$contentType = "application/json";
$input = json_encode($input);

$apiResult = curlWrap($entity, $input, $method, $contentType);
$apiResult = json_decode($apiResult, TRUE);

echo '<pre>';
print_r($apiResult);
echo '</pre>';
                

"accountID" and "apiKey" are required for all Api calls.

"language": en me hr si ru de nl fr it cz sk hu pl

Optional "lowestPrice" parameter load lowest prices for accommodation.

Optional "availability" parameter return calendar availability for rooms.

Optional "showUnavailableRooms" parameter return all rooms with message why rooms are not available.

Optional "showPriceList" parameter return all rooms with message why rooms are not available.

Example data Checkout (POST):

include("curlLib/curlWrap_v1.php");

// ************************** Checkout ********************

$entity = "checkout";

$input['data'] = array(
"accountId" => "2",
"apiKey" => "o5ic8IZCZYPGgmgh",
"language" => "en",
"checkIn" => "24.09.2024",
"checkOut" => "25.09.2024",
"numAdult" => "1",
"childAges" => [5,7],
"roomId" => "11017"
);

$method = "POST";
$contentType = "application/json";
$input = json_encode($input);

$apiResult = curlWrap($entity, $input, $method, $contentType);
$apiResult = json_decode($apiResult, TRUE);

echo '<pre>';
print_r($apiResult);
echo '</pre>';
                

"accountID" and "apiKey" are required for all Api calls.

"language": en me hr si ru de nl fr it cz sk hu pl

Example data Set booking (POST):

include("curlLib/curlWrap_v1.php");

// ************************** Set booking ********************

$entity = "setBooking";

$input['data'] = array(
"accountId" => "2",
"apiKey" => "o5ic8IZCZYPGgmgh",
"language" => "en",
"checkIn" => "24.09.2024",
"checkOut" => "25.09.2024",
"numAdult" => "1",
"childAges" => [5,7],
"roomId" => "11017",
"status" => "CONFIRMED",
"paymentMethod" => "Credit card online",
"paymentOption" => "Payment in full",
"note" => "",
"passengers" => array(
array(
"gender" => "Male",
"name" => "Ivan",
"surname" => "Kukić",
"email" => "ikukic@yahoo.com",
"phone" => "+38267613079",
"country" => "Crna Gora",
"city" => "Bar",
"address" => "Jovana Tomaševića 32",
"birthDate" => "01.08.1982",
"type" => "adult"
)
)
);

$method = "POST";
$contentType = "application/json";
$input = json_encode($input);

$apiResult = curlWrap($entity, $input, $method, $contentType);
$apiResult = json_decode($apiResult, TRUE);

echo '<pre>';
print_r($apiResult);
echo '</pre>';
                

"accountID" and "apiKey" are required for all Api calls.

"language": en me hr si ru de nl fr it cz sk hu pl

"status": CONFIRMED ON-HOLD REQUEST

"paymentMethod": Credit card online Credit card using offline authorization Bank transfer Western Union Cache

"paymentOption": Payment in full 30% now and 70% balance 10 days before arrival 30% now and 70% balance upon arrival

Optional "doNotSendDocument" parameter prevent system from sending info, proforma or invoice to passenger

Example data Get booking (POST):

include("curlLib/curlWrap_v1.php");

// ************************** Set booking ********************

$entity = "getBooking";

$input['data'] = array(
"accountId" => "2",
"apiKey" => "o5ic8IZCZYPGgmgh",
"bookingId" => "9841"
);

$method = "POST";
$contentType = "application/json";
$input = json_encode($input);

$apiResult = curlWrap($entity, $input, $method, $contentType);
$apiResult = json_decode($apiResult, TRUE);

echo '<pre>';
print_r($apiResult);
echo '</pre>';
                

"accountID" and "apiKey" are required for all Api calls.

Example data Cancel booking (POST):

include("curlLib/curlWrap_v1.php");

// ************************** Set booking ********************

$entity = "cancelBooking";

$input['data'] = array(
"accountId" => "2",
"apiKey" => "o5ic8IZCZYPGgmgh",
"bookingId" => "9841"
);

$method = "POST";
$contentType = "application/json";
$input = json_encode($input);

$apiResult = curlWrap($entity, $input, $method, $contentType);
$apiResult = json_decode($apiResult, TRUE);

echo '<pre>';
print_r($apiResult);
echo '</pre>';
                

"accountID" and "apiKey" are required for all Api calls.

Response codes:

Accommodation types


  • Apartment
  • Hotel
  • Villa
  • Authentic accommodation
  • Youth hostel
  • Houses with pool
  • Rooms
  • Tourist resorts
  • Holiday houses
  • Bed and breakfast
  • Guest house

Accommodation unit types


  • Apartment
  • Single room
  • Double room
  • Triple room
  • Four-bedded Room
  • Family room
  • Junior suite
  • Bungalow
  • Room
  • Twin Room
  • Studio
  • Superior room
  • Premium room
  • Suite
  • Cottage
  • Executive Suite
  • Presidential Suite
  • Penthouse
  • Luxury Suite
  • Residence
  • Deluxe
  • Villa
  • Quadruple Room
  • Maisonette
  • Room for disabled people

Billing types


  • Per person/night
  • Per room/night
  • Per packet

Selling types


  • On Request
  • Real Time