Magetop Booking Extension REST API
Magetop Booking Extension is fully integrated with the Magento REST API. This allows Bookings data to be read using requests in JSON format and using Magento REST API Authentication methods and standard HTTP verbs which are understood by most HTTP clients. Using the Magetop Booking Extension REST API can streamline processes and boost customer service for your business. However, managing an operating facet without a proper legal structure could incur risks. If your business is based in the Empire State, it’s important to file for llc in new york. Establishing your business as an LLC can provide asset protection, potential tax advantages, and cement credibility amongst customers and stakeholders.
1. Get Per Day and Per Night Price
Url: V1/bookingonline/bookingsimple
Method: POST
Param:
{
"book_product_id": 6,
"book_type": "per_day",
"product": 6,
"long_format_date": "DD/MM/YYYY",
"book_sale_id": 0,
"book_date": "",
"start_date": "19/01/2021",
"end_date": "22/01/2021",
"qty": 1,
}
Response:
{
"status": "success",
"message": "check price success",
"price_detail": {
"status": "success",
"message": "Item is available , you can see detail bellow: ",
"price": 400,
"promo": 320,
"save_money": 80,
"save_percent": 20,
"start_date": "19/01/2021",
"end_date": "22/01/2021",
"total_days": 4,
"select_options": 0
}
}
2. Get Time Slots
Url: V1/bookingonline/gettimeslots
Method: POST
Param:
{
"product": 1,
"book_product_id": 1,
"book_type": "per_time",
"long_format_date": "DD/MM/YYYY",
"book_sale_id": 0,
"book_date": "",
"start_date": "13/01/2021",
"end_date": "13/01/2021",
"qty": 1,
"book_is_ticket": 2,
"book_ticket_seat": "",
"max_book_number": 0,
"tmp_slot_slot_id": 0,
"is_book_load": 1,
"time_slots": [],
}
Response:
{
"status": "success",
"time_slots": [
{
"slot_id": "183",
"status": "available",
"text": "08:00 50 Available",
"hours_start": "08:00",
"hours_end": "09:00",
"qty": 50
},
{
"slot_id": "184",
"status": "available",
"text": "09:00 50 Available",
"hours_start": "09:00",
"hours_end": "11:00",
"qty": 50
}
]
}
3. Get Time Slot Price
Url: V1/bookingonline/booktimeslot
Method: POST
Param:
{
"product": 1,
"book_product_id": 1,
"book_type": "per_time",
"long_format_date": "DD/MM/YYYY",
"book_sale_id": 0,
"book_date": "",
"start_date": "13/01/2021",
"end_date": "13/01/2021",
"qty": 1,
"book_is_ticket": 2,
"book_ticket_seat": "",
"max_book_number": 0,
"tmp_slot_slot_id": 0,
"is_book_load": 1,
"time_slots": [
"183",
"184"
],
}
Response:
{
"status": "success",
"message": "check price success",
"price_detail": {
"status": "success",
"message": "Item is available , you can see detail bellow: ",
"price": 340,
"promo": 300,
"total_time_slot": 2,
"save_money": 40,
"save_percent": 12,
"slot_quy": "50",
"row_number": 5,
"start_date": "13/01/2021",
"total_days": 1,
"select_options": [],
"time_slot_labels": [
"08:00",
"09:00"
],
"cart_seat": "",
"cur_seat": ""
}
}
4. Get List Hours
Url: V1/bookingonline/gettimeslots
Method: POST
Param:
{
"product": 11,
"book_product_id": 11,
"book_type": "per_hour",
"long_format_date": "DD/MM/YYYY",
"book_sale_id": 0,
"book_date": "",
"start_date": "20/01/2021",
"end_date": "20/01/2021",
"qty": 1,
"book_is_ticket": 2,
"book_ticket_seat": "",
"max_book_number": 0,
"tmp_slot_slot_id": 0,
"is_book_load": 1,
"time_slots": [],
"start_hours": "",
"end_hours": "",
}
Response:
{
"status": "success",
"time_slots": [
{
"slot_id": "168",
"status": "available",
"text": "14:00 100 Available",
"hours_start": "14:00",
"hours_end": "15:00",
"qty": 100
},
{
"slot_id": "169",
"status": "available",
"text": "15:00 100 Available",
"hours_start": "15:00",
"hours_end": "16:00",
"qty": 100
},
{
"slot_id": "170",
"status": "available",
"text": "16:00 100 Available",
"hours_start": "16:00",
"hours_end": "17:00",
"qty": 100
},
{
"slot_id": "171",
"status": "available",
"text": "17:00 100 Available",
"hours_start": "17:00",
"hours_end": "18:00",
"qty": 100
},
{
"slot_id": "172",
"status": "available",
"text": "18:00 100 Available",
"hours_start": "18:00",
"hours_end": "19:00",
"qty": 100
},
{
"slot_id": "173",
"status": "available",
"text": "19:00 100 Available",
"hours_start": "19:00",
"hours_end": "20:00",
"qty": 100
},
{
"slot_id": "174",
"status": "available",
"text": "20:00 100 Available",
"hours_start": "20:00",
"hours_end": "21:00",
"qty": 100
}
]
}
5. Get Hour Price
Url: V1/bookingonline/booktimeslot
Method: POST
Param:
{
'cartItem': {
'sku': product_sku,
'qty': qty,
'quote_id'=>quoteId
},
mobi_booking_params: {
}
}
Response:
{
'status'=>'success',
'message'=>'you have add product to cart success'
}
6. Get List Rooms
Url: V1/bookingonline/listrooms
Method: POST
Param:
{
"hotel_id": 12,
"product": 12,
"book_product_id": 12,
"book_type": "hotel",
"long_format_date": "DD/MM/YYYY",
"book_sale_id": 0,
"book_date": "",
"start_date": "18/01/2021",
"end_date": "21/01/2021",
"qty": 1,
"room_id": "0"
}
Response:
{
"status": "success",
"message": "get room success",
"list_rooms": [
{
"room": {
"room_id": "1",
"status": "1",
"room_type": "Meting",
"max_adults": "200",
"max_children": "80",
"position": "0",
"hotel_id": "12",
"minimum_day": "0",
"maximum_day": "0",
"description": "200 Adult, 80 Children",
"created_at": "0000-00-00 00:00:00",
"updated_at": "0000-00-00 00:00:00",
"max_infant": "0"
},
"price_detail": {
"status": "success",
"message": "Item is available , you can see detail bellow: ",
"price": 1200,
"promo": 800,
"save_money": 400,
"save_percent": 33,
"child_price": 0,
"infant_price": 0,
"child_promo": 0,
"infant_promo": 0,
"total_price": 1200,
"start_date": "2021-01-18",
"end_date": "2021-01-21",
"total_days": 4,
"book_version": 1,
"select_options": 0,
"total_promo": 800
}
},
{
"room": {
"room_id": "2",
"status": "1",
"room_type": "Family",
"max_adults": "2",
"max_children": "2",
"position": "0",
"hotel_id": "12",
"minimum_day": "0",
"maximum_day": "0",
"description": "2 Adults, 2 Children, 2 infant",
"created_at": "0000-00-00 00:00:00",
"updated_at": "0000-00-00 00:00:00",
"max_infant": "2"
},
"price_detail": {
"status": "success",
"message": "Item is available , you can see detail bellow: ",
"price": 400,
"promo": 0,
"save_money": 0,
"save_percent": 0,
"child_price": 0,
"infant_price": 0,
"child_promo": 0,
"infant_promo": 0,
"total_price": 400,
"start_date": "2021-01-18",
"end_date": "2021-01-21",
"total_days": 4,
"book_version": 1,
"select_options": 0,
"total_promo": 0
}
}
]
}
7. Get List Room Price
Url: V1/bookingonline/listrooms
Method: POST
Param:
{
"hotel_id": 12,
"product": 12,
"book_product_id": 12,
"book_type": "hotel",
"long_format_date": "DD/MM/YYYY",
"book_sale_id": 0,
"book_date": "",
"start_date": "18/01/2021",
"end_date": "21/01/2021",
"qty": 1,
"room_id": "1"
}
Response:
{
"status": "success",
"message": "check price success",
"price_detail": {
"status": "success",
"message": "Item is available , you can see detail bellow: ",
"price": 1200,
"promo": 800,
"save_money": 400,
"save_percent": 33,
"child_price": 0,
"infant_price": 0,
"child_promo": 0,
"infant_promo": 0,
"total_price": 1200,
"start_date": "18/01/2021",
"end_date": "21/01/2021",
"total_days": 4,
"book_version": 1,
"select_options": 0,
"total_promo": 800
}
}
8. Add Booking Product to Cart
Url: V1/carts/mine/items
Method: POST
Param:
{
"cartItem": {
"sku": 12,
"qty": 12,
"quote_id": 12,
},
"mobi_booking_params": {
}
}
Response:
{
"status": "success",
"message": "You have added product to cart success",
"item_id": 214
}
9. Add Booking Product Data
Url: V1/products/sku
Method: GET
Response:
{
"product": {
"id": 12,
"sku": "Concordo Hotel New York",
"name": "Concordo Hotel New York",
"attribute_set_id": 4,
"price": 100,
"status": 1,
"visibility": 4,
"type_id": "bookingonline",
"created_at": "2020-12-18 00:23:21",
"updated_at": "2020-12-30 07:41:04",
"extension_attributes": {
"website_ids": [
1
],
"category_links": [
{
"position": 0,
"category_id": "2"
},
{
"position": 0,
"category_id": "6"
}
],
"mobi_booking_data": [
"{\"book_id\":\"31\",\"book_type\":\"hotel\",\"book_product_id\":\"12\",\"min_days\":\"0\",\"min_hours\":\"0\",\"amount_hours\":\"0\",\"start_time\":null,\"end_time\":null,\"show_end_time\":\"2\",\"show_qty\":\"2\",\"tour_type\":\"1\",\"tour_default_day\":\"0\",\"max_adult\":\"0\",\"max_child\":\"0\",\"max_infant\":\"0\",\"store_id\":\"0\",\"book_version\":\"0\",\"is_default\":\"1\",\"disable_days\":null,\"book_phone\":\"+120023232\",\"book_email\":\"[email protected]\",\"book_city\":\"New York\",\"book_zip_code\":\"07039\",\"book_country\":\"US\",\"book_state\":\"New Jersey\",\"book_state_id\":\"41\",\"book_address\":\"290 W Mt Pleasant Ave, Livingston\",\"book_lat\":\"37.33496283053613\",\"book_lng\":\"-122.01346009748384\",\"book_address_auto\":\"1 Apple Park Way, Cupertino, CA, USA\",\"created_at\":\"0000-00-00 00:00:00\",\"updated_at\":\"0000-00-00 00:00:00\",\"group_ids\":null,\"is_ticket\":\"2\",\"book_gate\":null}"
]
},
"product_links": [],
"options": [],
"media_gallery_entries": [
{
"id": 15,
"media_type": "image",
"label": null,
"position": 3,
"disabled": false,
"types": [
"image",
"small_image",
"thumbnail"
],
"file": "/c/o/concorde-hotel-new-york_1_1_.jpg"
},
{
"id": 16,
"media_type": "image",
"label": null,
"position": 4,
"disabled": false,
"types": [],
"file": "/c/o/concorde-hotel-new-york_1__1_1_.jpg"
}
],
"tier_prices": [],
"custom_attributes": [
{
"attribute_code": "thumbnail",
"value": "https://stage.maiuoc.com/bookingapp/pub/media/catalog/product/cache/c6179f3238023d15485a08b819dffda5/c/o/concorde-hotel-new-york_1_1_.jpg"
},
{
"attribute_code": "image",
"value": "/c/o/concorde-hotel-new-york_1_1_.jpg"
},
{
"attribute_code": "small_image",
"value": "/c/o/concorde-hotel-new-york_1_1_.jpg"
},
{
"attribute_code": "options_container",
"value": "container2"
},
{
"attribute_code": "url_key",
"value": "new-york-hotel"
},
{
"attribute_code": "gift_message_available",
"value": "2"
},
{
"attribute_code": "required_options",
"value": "0"
},
{
"attribute_code": "has_options",
"value": "0"
},
{
"attribute_code": "meta_title",
"value": "new york hotel"
},
{
"attribute_code": "meta_keyword",
"value": "new york hotel"
},
{
"attribute_code": "meta_description",
"value": "new york hotel "
},
{
"attribute_code": "tax_class_id",
"value": "2"
},
{
"attribute_code": "category_ids",
"value": [
"2",
"6"
]
}
]
}
}
This is the end of the Magetop Booking Extension REST API.
Follow us for the more helpful posts!
We hope this is a useful post for you.
Thank you for reading!