Resmio API (unauthenticated) Documentation
version v1
baseUri https://api.resmio.com/v1
protocols HTTPS
General
The Resmio API (unauthenticated) allowes partners to interact with resmio's backend to retrieve and search facilities, check their availability and create bookings. It is meant for third party applications that want to allow their users to search and book a spot in a restaurant. Each facility (restaurant) has an unique resmio ID in the system. For this documentation the resmio test facility The Fish (http://thefish.resmio.com) with the ID âthe-fishâ is used. The resmio ID will not be changed when the name of the facility is edited by the user.
For any questions relating to the resmio API contact us via email at support@resmio.com.
Legal
Please note that you are accepting the terms of service of the resmio API by using the resmio API.
External
A collection of external resources and other information.
Faciltiy API
Search Facility
GET: /facility
Get a list of facilities (restaurants)
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Query Parameters
in_partner_network
Filters facilities whether they want to be listed in partner networks or not.
Property | Value |
---|---|
required | false |
type | boolean |
examples | true |
verified
These restaurants have been reviewed by an employee of resmios and are considered real restaurants. Setting verified to True will return only real restaurants and exclude for example test restaurants.
Property | Value |
---|---|
required | false |
type | boolean |
examples | true |
automatically_confirm_bookings
Filters facilities whether they have automatic confirmation enabled or not. Setting this filter to True will return only restaurants that automatically accept bookings.
Property | Value |
---|---|
required | false |
type | boolean |
examples | true |
near
Get a list of facilities ordered by location. By default facilites in a radius of 50 km will be shown. This value can be adjusted by adding the âradiusâ URL parameter and a kilometer (km) value. The parameter is a string with the comma separated longitude and latitude.
Property | Value |
---|---|
required | false |
type | string |
examples | 13.41053,52.52437 |
distance
If "near" is provided then by default facilities in a radius of 50 km will be shown. This parameter here adjusts the radius. e.g. 20000 for 20km
Property | Value |
---|---|
required | false |
type | integer |
examples | 20000 |
check_closed_date
Get a list of facilities filtered by availability. By default if you specify a date in the check_closed_date parameter only facilities are returned that have at least 1 free seat available. You can adjust the required free seats by specifying the check_min_num field and ask the system for example to only return facilities that have "4" free seats available.
Note: The request parameters described above can be combined with other parameters, e.g. location filters
Note: As the calculation of availabilities is quite complex and we return "real time data" we rely on the cached value for availabilities. In some cases it can be that we return a facility and when you request later the availability it says that no free spots are available.
Property | Value |
---|---|
required | false |
type | string |
examples | 2019-08-28 |
check_min_num
This parameter allows you to filter facilities by the minimum required amount of free seats. It can only be used together with check_closed_date, otherwise it will be ignored.
Note: As the calculation of availabilities is quite complex and we return "real time data" we rely on the cached value for availabilities. In some cases it can be that we return a facility and when you request later the availability it says that no free spots are available.
Property | Value |
---|---|
required | false |
type | integer |
examples | 3 |
booking_enabled
Get facilities with booking functionality enabled or disabled.
Property | Value |
---|---|
required | false |
type | boolean |
ordering_enabled
Get facilities with ordering functionality enabled or disabled.
Property | Value |
---|---|
required | false |
type | boolean |
offset
Skip over a number of elements by specifying an offset value for the query
Property | Value |
---|---|
required | false |
type | integer |
examples | 20 |
limit
Limit the number of elements on the response
Property | Value |
---|---|
required | false |
type | integer |
examples | 80 |
Possible Responses
200
Search Facility
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/facility?in_partner_network=true&verified=true&automatically_confirm_bookings=true&near=13.41053,52.52437&distance=20000&check_closed_date=2019-08-28&check_min_num=3&offset=20&limit=80" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"meta": {
"limit": 20,
"next": "/v1/facility?limit=20&offset=20",
"offset": 0,
"previous": null,
"total_count": 4
},
"objects": [
{
"active_plan": "/v1/facility/velez-huynh/monthly_subscriptions/1",
"attributes": [],
"automatically_confirm_bookings": true,
"average_revenue_per_guest": "20.00",
"average_revenue_per_guest_currency": "NGN",
"booking_cancel_username_required": false,
"booking_charge_username_required": false,
"booking_create_username_required": false,
"booking_deposits_enabled": false,
"booking_edit_username_required": false,
"booking_enabled": true,
"booking_interval": 30,
"booking_timespan": 60,
"buttonCode": "<script data-resmio-button=\"velez-huynh\">\n (function(d, s) {\n var js, rjs = d.getElementsByTagName(s)[0];\n js = d.createElement(s);\n js.src = \"//192.168.137.128:8000/static/en/button.js\";\n js.async = true;\n rjs.parentNode.insertBefore(js, rjs); }(document, \"script\")\n );\n</script>",
"cancel_without_fees": false,
"cancel_without_fees_days": 0,
"categories": [],
"city": "Wilkinsonstad",
"combined_resources_enabled": true,
"country": "NG",
"currency": "EUR",
"deposit_amount": 50.0,
"deposit_option": "booking",
"deposit_reference": null,
"deposit_times_enabled": false,
"deposits_certain_group_enabled": false,
"deposits_certain_group_size": 0,
"deposits_charge_automatically": false,
"deposits_widget_description": "",
"description": "Dignissimos ea nisi unde est vitae velit. Doloribus culpa quidem nihil corrupti nam nisi. Veniam ullam ipsa atque rem amet vero possimus laboriosam. Ex saepe sed velit vitae natus animi nobis.",
"description_multilingual": {},
"email": "velez-huynh@example.com",
"facebook_page": "",
"facebook_pages": null,
"facebook_pixel": "",
"features": {
"addons_purchasable": true,
"admin_name": "Premium",
"adwords_enabled": false,
"api_key_enabled": true,
"booking_deposit_enabled": false,
"booking_export_enabled": true,
"booking_filter_enabled": true,
"booking_note_enabled": true,
"booking_receipt_custom_text_enabled": true,
"booking_reminders_enabled": true,
"booking_tags_enabled": true,
"closed_days_widget_text_enabled": true,
"custom_prints_enabled": true,
"customers_enabled": true,
"default_addons": [
"tickets",
"free_resmio_website",
"small_distribution_network",
"free_partner_integration"
],
"detailed_booking_notification_email_enabled": true,
"discounts_enabled": true,
"distribution_network_enabled": true,
"feedback_enabled": true,
"gastrofix_enabled": true,
"google_reviews_enabled": false,
"graphical_table_plan_enabled": false,
"hide_gastrofix": false,
"hide_invoices": false,
"hide_payment_details": false,
"hide_prices": false,
"hide_recommend_resmio": false,
"hide_tickets": false,
"id": "premium",
"individual_widget_text_enabled": true,
"invoicing_name": "resmio Premium Software",
"marketing_enabled": false,
"monthly_fee": "49.90",
"name": "Premium",
"newsletter_enabled": false,
"notification_emails_enabled": true,
"pages_enabled": true,
"paied_tariff": true,
"partner_cover": "0.00",
"partner_network_enabled": false,
"past_booking_overview_enabled": true,
"payment_transactions_enabled": true,
"plan_screen_name": "Premium",
"recurrent_booking_enabled": true,
"report_enabled": true,
"reputation_widget_enabled": false,
"resmiotables_enabled": false,
"retention_period_switch_enabled": true,
"shift_schedule_enabled": true,
"slow_hours_enabled": true,
"sms_guest_enabled": false,
"sms_guest_reminder_enabled": false,
"sms_waiter_enabled": false,
"sms_waiter_max_waiters": 0,
"standard_cover": "0.00",
"tableplan_enabled": true,
"test_tariff": false,
"ticket_fee": "0.06",
"ticketing_enabled": true,
"upgradable": false,
"user_rights_management_enabled": true,
"vectron_enabled": true,
"weight": 5
},
"feedback_average": 83.0,
"feedback_change": 83.0,
"feedback_count": 9,
"feedback_enabled": true,
"feedback_public": false,
"feedback_this_month": true,
"food_average": 66.0,
"google_page": "",
"google_places_id": null,
"google_redirects_enabled": true,
"id": "velez-huynh",
"images": [],
"in_partner_network": false,
"instagram_page": "",
"language": "en",
"location": null,
"logo": null,
"max_discount": 30,
"max_num": 9,
"min_book_in_advance_hours": 0,
"min_num": 1,
"name": "Velez-Huynh",
"offers": [],
"opening_hours": [
{
"begins": "09:00",
"capacity": 10,
"ends": "22:00",
"weekdays": [
0,
1,
2,
3,
4,
5,
6
]
},
{
"begins": "09:00",
"capacity": 10,
"ends": "22:00",
"weekdays": [
0,
1,
2,
3,
4,
5,
6
]
}
],
"ordering_enabled": true,
"paypal_client_id": null,
"paypal_secret_key": null,
"phone": "",
"pii_retention_period": "forever",
"primary_review_channel": "resmio",
"reachedBookingLimit": false,
"receipt_extra_text": "",
"resource_combination_by_combination": false,
"resource_combination_by_group": true,
"resource_uri": "/v1/facility/velez-huynh",
"resources_enabled": true,
"send_bookings_to_vectron": false,
"send_reminders": false,
"service_average": 100.0,
"short_description": "",
"show_tables_and_allow_allocation_of_bookings": false,
"slug": "velez-huynh",
"state": "Berlin",
"street": "Allen Plains",
"stripe_publish_key": null,
"stripe_secret_key": null,
"stripe_sepa_enabled": false,
"timezone": "Europe/Berlin",
"twitter_page": "",
"type": "restaurant",
"unavailable_booking_enabled": false,
"unique_deposit_hours": {},
"vat_id": "",
"vat_rate": "0",
"verified": true,
"visual_opening_hours": [],
"website": "",
"widgetCode": "<div id=\"resmio-velez-huynh\"></div>\n<script>(function(d, s) {\n var js, rjs = d.getElementsByTagName(s)[0];\n js = d.createElement(s);\n js.src = \"//192.168.137.128:8000/static/en/widget.js#id=velez-huynh&width=275px&height=400px\";\n rjs.parentNode.insertBefore(js, rjs);\n}(document, \"script\"));\n</script>",
"widget_closed_text": "Sorry, we are closed on %s",
"widget_custom_text": "",
"youtube_page": "",
"zip_code": "86881"
},
...
]
}
Type
any
Read Public Info
GET: /facility/{facility_id}
Get the public information of one facility specified by facility_id
As part of the response you will get the button and widget code for integration in to a website. The field name of the button code is âbuttonCodeâ. The field name of the widget code is "widgetCode".
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
200
Read Public Info
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/facility/{facility_id}" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"attributes": [],
"booking_cancel_username_required": false,
"booking_charge_username_required": false,
"booking_create_username_required": false,
"booking_deposits_enabled": false,
"booking_edit_username_required": false,
"buttonCode": "<script data-resmio-button=\"velez-huynh\">\n (function(d, s) {\n var js, rjs = d.getElementsByTagName(s)[0];\n js = d.createElement(s);\n js.src = \"//192.168.137.128:8000/static/en/button.js\";\n js.async = true;\n rjs.parentNode.insertBefore(js, rjs); }(document, \"script\")\n );\n</script>",
"cancel_without_fees": false,
"cancel_without_fees_days": 0,
"categories": [],
"city": "Wilkinsonstad",
"country": "NG",
"currency": "EUR",
"deposit_amount": 50.0,
"deposit_option": "booking",
"deposit_reference": null,
"deposit_times_enabled": false,
"deposits_certain_group_enabled": false,
"deposits_certain_group_size": 0,
"deposits_charge_automatically": false,
"deposits_widget_description": "",
"description": "Dignissimos ea nisi unde est vitae velit. Doloribus culpa quidem nihil corrupti nam nisi. Veniam ullam ipsa atque rem amet vero possimus laboriosam. Ex saepe sed velit vitae natus animi nobis.",
"description_multilingual": {},
"email": "velez-huynh@example.com",
"facebook_page": "",
"facebook_pixel": "",
"feedback_average": null,
"feedback_change": null,
"feedback_count": null,
"feedback_enabled": true,
"feedback_public": false,
"feedback_this_month": null,
"food_average": null,
"id": "velez-huynh",
"images": [],
"in_partner_network": false,
"instagram_page": "",
"language": "en",
"location": null,
"logo": null,
"max_num": 9,
"min_book_in_advance_hours": 0,
"min_num": 1,
"name": "Velez-Huynh",
"offers": [],
"opening_hours": [
{
"begins": "09:00",
"capacity": 10,
"ends": "22:00",
"weekdays": [
0,
1,
2,
3,
4,
5,
6
]
},
{
"begins": "09:00",
"capacity": 10,
"ends": "22:00",
"weekdays": [
0,
1,
2,
3,
4,
5,
6
]
}
],
"phone": "",
"primary_review_channel": "resmio",
"reachedBookingLimit": false,
"resource_uri": "/v1/facility/velez-huynh",
"service_average": null,
"short_description": "",
"slug": "velez-huynh",
"state": "Berlin",
"street": "Allen Plains",
"stripe_sepa_enabled": false,
"timezone": "Europe/Berlin",
"twitter_page": "",
"type": "restaurant",
"unique_deposit_hours": {},
"verified": true,
"visual_opening_hours": [],
"website": "",
"widgetCode": "<div id=\"resmio-velez-huynh\"></div>\n<script>(function(d, s) {\n var js, rjs = d.getElementsByTagName(s)[0];\n js = d.createElement(s);\n js.src = \"//192.168.137.128:8000/static/en/widget.js#id=velez-huynh&width=275px&height=400px\";\n rjs.parentNode.insertBefore(js, rjs);\n}(document, \"script\"));\n</script>",
"widget_closed_text": "Sorry, we are closed on %s",
"widget_custom_text": "",
"youtube_page": "",
"zip_code": "86881"
}
Type
any
Read Availabilities
GET: /facility/{facility_id}/availability
Get the availabilities for a facility for specific day. It will return the availabilities for today if no date is explicitely set.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Query Parameters
date__gte
Specify the date to filter. The date is understood to be in the timezone of the facility.
Property | Value |
---|---|
required | false |
type | date-only |
examples | 2019-08-29 |
Possible Responses
200
Read Availabilities
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/facility/{facility_id}/availability?date__gte=2019-08-29" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"meta": {
"limit": 1000,
"next": null,
"offset": 0,
"previous": null,
"total_count": 19
},
"objects": [
{
"available": 20,
"available_authenticated": 20,
"checksum": "ada9108866fe1a84916a47ca06ea807e14f293f218f12df3c4b5e51fea0171d3",
"date": "2019-08-29T10:00:00Z",
"id": null,
"local_date_formatted": "01. Oktober 2016 12:00",
"local_time_formatted": "12:00",
"message": null,
"price_change": 0,
"resource_uri": "\/v1\/facility\/the-fish\/availability\/1475316000"
},
...
{
"available": 20,
"available_authenticated": 20,
"checksum": "8c7c910a178ce360271c5011b803fe87fac8001c93d3a443b4f0cbc8c8c605f9",
"date": "2019-08-29T19:00:00Z",
"id": null,
"local_date_formatted": "01. Oktober 2016 21:00",
"local_time_formatted": "21:00",
"message": null,
"price_change": 0,
"resource_uri": "\/v1\/facility\/the-fish\/availability\/1475348400"
}
]
}
Type
any
Menu Widget
GET: /facility/{facility_id}/menu_widget
Get the content for the menu widget, in general a list with all configured menus This is only available when enabled by the facility.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Query Parameters
offset
Skip over a number of elements by specifying an offset value for the query
Property | Value |
---|---|
required | false |
type | integer |
examples | 20 |
limit
Limit the number of elements on the response
Property | Value |
---|---|
required | false |
type | integer |
examples | 80 |
Possible Responses
200
Menu Widget
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/facility/{facility_id}/menu_widget?offset=20&limit=80" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"meta": {
"limit": 20,
"next": null,
"offset": 0,
"previous": null,
"total_count": 1
},
"objects": [{
"allow_cash": true,
"allow_credit_card": false,
"allow_delivery": true,
"allow_paypal": false,
"allow_pickup": true,
"allow_qr_ordering": false,
"allow_sepa_direct_debit": false,
"created": "2020-08-03T08:41:53.185766",
"delivery_area": null,
"delivery_days_in_advance": 0,
"delivery_fee": "0.00",
"delivery_lead_time": 60,
"delivery_minimum_order_value": "0.00",
"enabled": true,
"facility": "/v1/facility/the-fish",
"force_prepayment_order_value": null,
"id": 2,
"menu_categories": [{
"created": "2020-08-03T08:41:53.246097",
"description": "Quality beyond generation air career evening. Understand writer method story season. See through specific body different.",
"facility": "/v1/facility/the-fish",
"id": 10,
"image": null,
"menu": "/v1/facility/the-fish/menus/2",
"name": "Beverages",
"online_order_enabled": true,
"priority": 5.0,
"products": ["/v1/facility/the-fish/products/16", "/v1/facility/the-fish/products/17", "/v1/facility/the-fish/products/18"],
"resource_uri": "/v1/facility/the-fish/menu_categories/10",
"show_products_in_menu": true,
"updated": "2020-08-03T08:41:53.246121"
}, {
"created": "2020-08-03T08:41:53.242151",
"description": "Direction behavior rate easy call season. Remain represent usually carry station indicate. Center necessary issue.\nAvailable purpose ground up. Charge word attack human activity court.",
"facility": "/v1/facility/the-fish",
"id": 9,
"image": null,
"menu": "/v1/facility/the-fish/menus/2",
"name": "Salads",
"online_order_enabled": true,
"priority": 1.0,
"products": ["/v1/facility/the-fish/products/14", "/v1/facility/the-fish/products/15", "/v1/facility/the-fish/products/13"],
"resource_uri": "/v1/facility/the-fish/menu_categories/9",
"show_products_in_menu": true,
"updated": "2020-08-03T08:41:53.242184"
}, {
"created": "2020-08-03T08:41:53.238451",
"description": "Size across region body director. Certainly nice art later scene lay. Get beautiful eat minute audience once produce serious.",
"facility": "/v1/facility/the-fish",
"id": 8,
"image": null,
"menu": "/v1/facility/the-fish/menus/2",
"name": "Burger",
"online_order_enabled": true,
"priority": 3.0,
"products": [],
"resource_uri": "/v1/facility/the-fish/menu_categories/8",
"show_products_in_menu": true,
"updated": "2020-08-03T08:41:53.238488"
}, {
"created": "2020-08-03T08:41:53.234847",
"description": "Civil inside consider fact. Produce many require consumer.\nCongress right prove record discover instead. Party business civil fill group.\nPull surface term. Allow whatever top next.",
"facility": "/v1/facility/the-fish",
"id": 7,
"image": null,
"menu": "/v1/facility/the-fish/menus/2",
"name": "Sandwiches",
"online_order_enabled": true,
"priority": 4.0,
"products": [],
"resource_uri": "/v1/facility/the-fish/menu_categories/7",
"show_products_in_menu": true,
"updated": "2020-08-03T08:41:53.234870"
}, {
"created": "2020-08-03T08:41:53.230444",
"description": "Parent tough follow all over. Next vote top baby watch them.\nAfter general religious reflect.\nBoy one wear simply. Shake beyond give cell land build our.",
"facility": "/v1/facility/the-fish",
"id": 6,
"image": null,
"menu": "/v1/facility/the-fish/menus/2",
"name": "Pizzas",
"online_order_enabled": true,
"priority": 2.0,
"products": ["/v1/facility/the-fish/products/10", "/v1/facility/the-fish/products/11", "/v1/facility/the-fish/products/12"],
"resource_uri": "/v1/facility/the-fish/menu_categories/6",
"show_products_in_menu": true,
"updated": "2020-08-03T08:41:53.230466"
}
],
"name": "default",
"pickup_days_in_advance": 0,
"pickup_lead_time": 60,
"product_delivery_accept_hours": [{
"begins": "09:00:00",
"created": "2020-08-03T08:41:53.188988",
"ends": "22:00:00",
"facility": "/v1/facility/the-fish",
"id": 2,
"menu": "/v1/facility/the-fish/menus/2",
"resource_uri": "/v1/facility/the-fish/product_delivery_accept_hours/2",
"updated": "2020-08-03T08:41:53.189025",
"weekdays": [0, 1, 2, 3, 4, 5, 6]
}
],
"product_pickup_accept_hours": [{
"begins": "09:00:00",
"created": "2020-08-03T08:41:53.191791",
"ends": "22:00:00",
"facility": "/v1/facility/the-fish",
"id": 2,
"menu": "/v1/facility/the-fish/menus/2",
"resource_uri": "/v1/facility/the-fish/product_pickup_accept_hours/2",
"updated": "2020-08-03T08:41:53.191813",
"weekdays": [0, 1, 2, 3, 4, 5, 6]
}
],
"product_qr_order_accept_hours": [{
"begins": "09:00:00",
"created": "2020-08-03T08:41:53.194271",
"ends": "22:00:00",
"facility": "/v1/facility/the-fish",
"id": 2,
"menu": "/v1/facility/the-fish/menus/2",
"menu_categories": [],
"resource_uri": "/v1/facility/the-fish/product_qr_order_accept_hours/2",
"updated": "2020-08-03T08:41:53.194309",
"weekdays": [0, 1, 2, 3, 4, 5, 6]
}
],
"products": [{
"created": "2020-08-03T08:41:53.351387",
"description": "Activity south several book spend. Statement treatment town maybe example fall. Relationship become another wear maybe.\nPut turn follow improve series.",
"facility": "/v1/facility/the-fish",
"id": 13,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/9",
"online_order_enabled": true,
"price_gross": "3.99",
"priority": 1.0,
"product_allergens_exist": true,
"product_identifier": "1",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/13",
"show_product_in_menu": true,
"title": "Cesar Salad",
"updated": "2020-08-03T12:19:37.393787"
}, {
"created": "2020-08-03T08:41:53.458207",
"description": "Air cover sign rise. Born region sport candidate. West population market save impact.\nStudy majority within control brother part.",
"facility": "/v1/facility/the-fish",
"id": 18,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/10",
"online_order_enabled": true,
"price_gross": "1.99",
"priority": 3.0,
"product_allergens_exist": false,
"product_identifier": "9",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/18",
"show_product_in_menu": true,
"title": "Sprite",
"updated": "2020-08-03T08:41:53.458230"
}, {
"created": "2020-08-03T08:41:53.439333",
"description": "Blue not anyone walk TV important. Pretty your keep month my each bag. Line especially especially finally great.\nLight no source let. Water record mean head bit difficult bit.",
"facility": "/v1/facility/the-fish",
"id": 17,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/10",
"online_order_enabled": true,
"price_gross": "1.99",
"priority": 2.0,
"product_allergens_exist": false,
"product_identifier": "8",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/17",
"show_product_in_menu": true,
"title": "Coke",
"updated": "2020-08-03T08:41:53.439373"
}, {
"created": "2020-08-03T08:41:53.422015",
"description": "Describe prevent trade. What suggest long occur past. Crime score seven modern store personal.\nFormer although of goal four pull discover. Hope explain all side recognize.",
"facility": "/v1/facility/the-fish",
"id": 16,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/10",
"online_order_enabled": true,
"price_gross": "1.49",
"priority": 1.0,
"product_allergens_exist": false,
"product_identifier": "7",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/16",
"show_product_in_menu": true,
"title": "Water",
"updated": "2020-08-03T08:41:53.422037"
}, {
"created": "2020-08-03T08:41:53.393888",
"description": "Total sing military. Toward subject interest practice manager yes visit. Message identify again open allow.",
"facility": "/v1/facility/the-fish",
"id": 15,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/9",
"online_order_enabled": true,
"price_gross": "7.99",
"priority": 3.0,
"product_allergens_exist": false,
"product_identifier": "3",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/15",
"show_product_in_menu": true,
"title": "Noodle Salad",
"updated": "2020-08-03T08:41:53.393910"
}, {
"created": "2020-08-03T08:41:53.373162",
"description": "Their way course attention TV. Performance new door rise policy.\nExplain wall sea decision baby series. Send big then.\nRespond teacher play western.",
"facility": "/v1/facility/the-fish",
"id": 14,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/9",
"online_order_enabled": true,
"price_gross": "7.99",
"priority": 2.0,
"product_allergens_exist": false,
"product_identifier": "2",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/14",
"show_product_in_menu": true,
"title": "Chef Salad",
"updated": "2020-08-03T08:41:53.373185"
}, {
"created": "2020-08-03T08:41:53.316416",
"description": "Learn finish including laugh. Event recent summer under article drug source. Bit perhaps individual sound small leg watch ten. Seek wife Congress offer month.",
"facility": "/v1/facility/the-fish",
"id": 12,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/6",
"online_order_enabled": true,
"price_gross": "8.99",
"priority": 3.0,
"product_allergens_exist": false,
"product_identifier": "6",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/12",
"show_product_in_menu": true,
"title": "Pizza Chef",
"updated": "2020-08-03T08:41:53.316443"
}, {
"created": "2020-08-03T08:41:53.294920",
"description": "Last bring determine open. Participant collection large control push space win.\nGun success medical door beautiful.",
"facility": "/v1/facility/the-fish",
"id": 11,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/6",
"online_order_enabled": true,
"price_gross": "7.99",
"priority": 2.0,
"product_allergens_exist": false,
"product_identifier": "5",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/11",
"show_product_in_menu": true,
"title": "Pizza Margarita",
"updated": "2020-08-03T08:41:53.294957"
}, {
"created": "2020-08-03T08:41:53.275024",
"description": "About government level state remain light control. Positive during writer animal. Talk remember which question.\nSeveral inside senior serious. Physical drive art across. Father field similar.",
"facility": "/v1/facility/the-fish",
"id": 10,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/6",
"online_order_enabled": true,
"price_gross": "5.99",
"priority": 1.0,
"product_allergens_exist": false,
"product_identifier": "4",
"product_modifiers_exist": true,
"product_variations_exist": true,
"resource_uri": "/v1/facility/the-fish/products/10",
"show_product_in_menu": true,
"title": "Salami Pizza",
"updated": "2020-08-03T08:41:53.275046"
}
],
"qr_allow_cash": false,
"qr_allow_credit_card": false,
"qr_allow_paypal": false,
"qr_allow_sepa_direct_debit": false,
"qr_cash_payment_text": "",
"qr_force_prepayment_order_value": null,
"resource_uri": "/v1/facility/the-fish/menu_widget/2",
"updated": "2020-08-03T12:14:08.828802"
}
]
}
Type
any
Create Menu Widget Cart
POST: /facility/{facility_id}/menu_widget_cart
Creates a new cart for the menu widget, which holds all the products that one wants to buy. Each cart has a type
, either delivery
, pickup
or qr_order
. You have to remember the returned UUID
as you will need it later as authentication (Header MENU-CART-UUID
) for all cart modifications (e.g. adding a product to the cart).
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
201
Create Menu Widget Cart
CURL EXAMPLE
curl -X POST "https://api.resmio.com/v1/facility/{facility_id}/menu_widget_cart" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
Content-Type: application/json
REQUEST BODY
{
"type": "delivery"
}
Type
any
RESPONSE BODY
201
{
"created": "2020-08-03T12:26:43Z",
"facility": "/v1/facility/the-fish",
"id": 6,
"product_cart_items": [],
"product_orders": [],
"resource_uri": "/v1/facility/the-fish/menu_widget_cart/6",
"status": "open",
"type": "delivery",
"updated": "2020-08-03T12:26:43Z",
"uuid": "2c170e8f-31d6-4578-97af-e8408dc77a68"
}
Type
any
Create Menu Widget Cart Item
POST: /facility/{facility_id}/menu_widget_cart_item
Adds a product to the cart including the selected variation and modifiers.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
MENU-CART-UUID
The UUID of the cart. This UUID is returned upon creation of a cart and acts as authentication for all cart modifications.
Property | Value |
---|---|
required | true |
type | string |
examples | bc9c29e5-6137-45b5-b900-8be8812a82ba |
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
201
Create Menu Widget Cart Item
CURL EXAMPLE
curl -X POST "https://api.resmio.com/v1/facility/{facility_id}/menu_widget_cart_item" \
-H "MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba
Content-Type: application/json
REQUEST BODY
{
"id": null,
"quantity": 1,
"product": "/v1/facility/the-fish/menu_widget_product/13",
"product_variation": "/v1/facility/the-fish/product_variations/37",
"product_modifiers": ["/v1/facility/the-fish/product_modifiers/35"],
"facility": "/v1/facility/the-fish",
"menu_widget_cart": "/v1/facility/the-fish/menu_widget_cart/6"
}
Type
any
RESPONSE BODY
201
{
"created": "2020-08-03T12:26:43Z",
"description": "Small, Yoghurt",
"facility": "/v1/facility/the-fish",
"id": 1,
"menu": "/v1/facility/the-fish/menus/2",
"menu_widget_cart": "/v1/facility/the-fish/menu_widget_cart/6",
"price_gross": "3.9900",
"product": "/v1/facility/the-fish/menu_widget_product/13",
"product_modifiers": ["/v1/facility/the-fish/product_modifiers/35"],
"product_variation": "/v1/facility/the-fish/product_variations/37",
"quantity": 1,
"resource_uri": "/v1/facility/the-fish/menu_widget_cart_item/1",
"title": "Cesar Salad",
"updated": "2020-08-03T12:26:43Z"
}
Type
any
Delete Menu Widget Cart Item
DELETE: /facility/{facility_id}/menu_widget_cart_item/{menu_widget_cart_item_id}
Deletes a menu widget cart item (specified by menu_widget_cart_item_id
) of one facility specified by facility_id
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
menu_widget_cart_item_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
MENU-CART-UUID
The UUID of the cart. This UUID is returned upon creation of a cart and acts as authentication for all cart modifications.
Property | Value |
---|---|
required | true |
type | string |
examples | bc9c29e5-6137-45b5-b900-8be8812a82ba |
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
204
Delete Menu Widget Cart Item
CURL EXAMPLE
curl -X DELETE "https://api.resmio.com/v1/facility/{facility_id}/menu_widget_cart_item/{menu_widget_cart_item_id}" \
-H "MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba" \
-H "Content-Type: application/json"
REQUEST HEADERS
MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba
Content-Type: application/json
RESPONSE BODY
Updates Menu Widget Cart Item
PATCH: /facility/{facility_id}/menu_widget_cart_item/{menu_widget_cart_item_id}
Partial update of a menu widget cart item (specified by menu_menu_widget_cart_item_id
) of a facility (specified by facility_id
).
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
menu_widget_cart_item_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
MENU-CART-UUID
The UUID of the cart. This UUID is returned upon creation of a cart and acts as authentication for all cart modifications.
Property | Value |
---|---|
required | true |
type | string |
examples | bc9c29e5-6137-45b5-b900-8be8812a82ba |
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
202
Updates Menu Widget Cart Item
CURL EXAMPLE
curl -X PATCH "https://api.resmio.com/v1/facility/{facility_id}/menu_widget_cart_item/{menu_widget_cart_item_id}" \
-H "MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba
Content-Type: application/json
REQUEST BODY
{
"created": "2020-08-03T12:49:09Z",
"description": "Medium, Yoghurt",
"facility": "/v1/facility/the-fish",
"id": 3,
"menu": "/v1/facility/the-fish/menus/2",
"menu_widget_cart": "/v1/facility/the-fish/menu_widget_cart/6",
"price_gross": "5.9900",
"product": "/v1/facility/the-fish/menu_widget_product/13",
"product_modifiers": ["/v1/facility/the-fish/product_modifiers/35"],
"product_variation": "/v1/facility/the-fish/product_variations/38",
"quantity": 2,
"resource_uri": "/v1/facility/the-fish/menu_widget_cart_item/3",
"title": "Cesar Salad",
"updated": "2020-08-03T12:49:09Z"
}
Type
any
RESPONSE BODY
202
{
"created": "2020-08-03T12:49:09Z",
"description": "Medium, Yoghurt",
"facility": "/v1/facility/the-fish",
"id": 3,
"menu": "/v1/facility/the-fish/menus/2",
"menu_widget_cart": "/v1/facility/the-fish/menu_widget_cart/6",
"price_gross": "11.9800",
"product": "/v1/facility/the-fish/menu_widget_product/13",
"product_modifiers": ["/v1/facility/the-fish/product_modifiers/35"],
"product_variation": "/v1/facility/the-fish/product_variations/38",
"quantity": 2,
"resource_uri": "/v1/facility/the-fish/menu_widget_cart_item/3",
"title": "Cesar Salad",
"updated": "2020-08-03T12:49:14Z"
}
Type
any
Create Menu Widget Order
POST: /facility/{facility_id}/menu_widget_cart_order
Creates the actual order for a cart. There are various constraints in order for an order to be accepted. Check the response of menu_widget
. E.g. the validation of the fulfillment_time
is influenced by the delivery_lead_time
/ pickup_lead_time
/ delivery_days_in_advance
/ pickup_days_in_advance
E.g. the validation of the payment_type
is influenced by allow_cash
/ allow_credit_card
/ allow_paypal
/ qr_allow_cash
/ qr_allow_credit_card
/ qr_allow_paypal
/ force_prepayment_order_value
/ qr_force_prepayment_order_value
The payment_type
can either be OUTSTANDING
(for cash payment) / PAYPAL
(for PayPal, requires token
to be passed along) / CCARD
for (Stripe credit card, requires token
to be passed along) / SEPA-DD
for (Stripe SEPA direct debit, requires token
to be passed along)
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
MENU-CART-UUID
The UUID of the cart. This UUID is returned upon creation of a cart and acts as authentication for all cart modifications.
Property | Value |
---|---|
required | true |
type | string |
examples | bc9c29e5-6137-45b5-b900-8be8812a82ba |
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
201
Create Menu Widget Order
CURL EXAMPLE
curl -X POST "https://api.resmio.com/v1/facility/{facility_id}/menu_widget_cart_order" \
-H "MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
MENU-CART-UUID: bc9c29e5-6137-45b5-b900-8be8812a82ba
Content-Type: application/json
REQUEST BODY
{
"address1": "Teststreet 23",
"address2": "Second floor",
"zip_code": "123456",
"city": "Testcity",
"name": "John Doe",
"email": "john.doe@example.com",
"phone": "+4916000000000",
"notes": "",
"token": "",
"owner_name": "",
"owner_email": "",
"fulfillment_time": "2020-08-03T16:00:00+02:00",
"product_cart": "/v1/facility/the-fish/menu_widget_cart/6",
"payment_type": "OUTSTANDING",
"source": "10.10.10.143",
"fulfillment_day": "2020-08-03"
}
Type
any
RESPONSE BODY
201
{
"address1": "Teststreet 23",
"address2": "Second floor",
"city": "Testcity",
"comment": "",
"company": "",
"country": "",
"created": "2020-08-03T12:53:00Z",
"currency": "EUR",
"email": "john.doe@example.com",
"facility": "/v1/facility/the-fish",
"fulfillment_day": "2020-08-03",
"fulfillment_time": "2020-08-03T14:00:00Z",
"id": 6,
"is_active": true,
"item_quantity": 2,
"name": "John Doe",
"notes": "",
"owner_email": "",
"owner_name": "",
"payment_type": "OUTSTANDING",
"phone": "+4916000000000",
"pickup_lead_time": 6,
"price_gross": "11.98",
"product_cart": "/v1/facility/the-fish/menu_widget_cart/6",
"ref_num": "ho9c5w",
"resource_uri": "/v1/facility/the-fish/menu_widget_order/6",
"source": "10.10.10.143",
"status": "new",
"task_ids": "",
"token": "",
"type": "delivery",
"updated": "2020-08-03T12:53:00Z",
"uuid": "ce02232a-b556-49c7-9371-6a15c2a479a2",
"zip_code": "123456"
}
Type
any
Menu Widget Product
GET: /facility/{facility_id}/menu_widget_product/{product_id}
Get the details for a specific product specified by product_id
with all variations, allergens and modifiers.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
product_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Query Parameters
offset
Skip over a number of elements by specifying an offset value for the query
Property | Value |
---|---|
required | false |
type | integer |
examples | 20 |
limit
Limit the number of elements on the response
Property | Value |
---|---|
required | false |
type | integer |
examples | 80 |
Possible Responses
200
Menu Widget Product
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/facility/{facility_id}/menu_widget_product/{product_id}?offset=20&limit=80" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"created": "2020-08-03T08:41:53.351387",
"description": "Nice cesar salad\nNot for Brutus!",
"facility": "/v1/facility/the-fish",
"id": 13,
"image": "",
"menu": "/v1/facility/the-fish/menus/2",
"menu_category": "/v1/facility/the-fish/menu_categories/9",
"online_order_enabled": true,
"price_gross": "3.99",
"product_allergens": [{
"created": "2020-08-03T08:41:53.248501",
"facility": "/v1/facility/the-fish",
"id": 7,
"products": ["/v1/facility/the-fish/products/13"],
"resource_uri": "/v1/facility/the-fish/product_allergens/7",
"title": "Cereals containing gluten",
"updated": "2020-08-03T12:19:37.564397"
}
],
"product_identifier": "1",
"product_modifier_groups": [{
"created": "2020-08-03T08:41:53.337791",
"facility": "/v1/facility/the-fish",
"id": 5,
"maximum_quantity": 1,
"menu": "/v1/facility/the-fish/menus/2",
"minimum_quantity": 1,
"resource_uri": "/v1/facility/the-fish/product_modifier_groups/5",
"title": "Salad Dressings",
"title_public": "Dressings",
"updated": "2020-08-03T08:41:53.337817"
}
],
"product_modifiers": [{
"created": "2020-08-03T08:41:53.354494",
"facility": "/v1/facility/the-fish",
"id": 34,
"maximum_quantity": 1,
"menu": "/v1/facility/the-fish/menus/2",
"minimum_quantity": 0,
"price_gross": "0.00",
"priority": 1.0,
"product": "/v1/facility/the-fish/products/13",
"product_modifier_group": "/v1/facility/the-fish/product_modifier_groups/5",
"resource_uri": "/v1/facility/the-fish/product_modifiers/34",
"title": "Vinegar and oil",
"updated": "2020-08-03T08:41:53.354520"
}, {
"created": "2020-08-03T08:41:53.357885",
"facility": "/v1/facility/the-fish",
"id": 35,
"maximum_quantity": 1,
"menu": "/v1/facility/the-fish/menus/2",
"minimum_quantity": 0,
"price_gross": "0.00",
"priority": 2.0,
"product": "/v1/facility/the-fish/products/13",
"product_modifier_group": "/v1/facility/the-fish/product_modifier_groups/5",
"resource_uri": "/v1/facility/the-fish/product_modifiers/35",
"title": "Yoghurt",
"updated": "2020-08-03T08:41:53.357912"
}, {
"created": "2020-08-03T08:41:53.361205",
"facility": "/v1/facility/the-fish",
"id": 36,
"maximum_quantity": 1,
"menu": "/v1/facility/the-fish/menus/2",
"minimum_quantity": 0,
"price_gross": "0.00",
"priority": 3.0,
"product": "/v1/facility/the-fish/products/13",
"product_modifier_group": "/v1/facility/the-fish/product_modifier_groups/5",
"resource_uri": "/v1/facility/the-fish/product_modifiers/36",
"title": "Balsamico",
"updated": "2020-08-03T08:41:53.361231"
}
],
"product_variations": [{
"created": "2020-08-03T08:41:53.367070",
"facility": "/v1/facility/the-fish",
"id": 38,
"menu": "/v1/facility/the-fish/menus/2",
"modifier_price_multiplicator": "2.00",
"price_gross": "5.99",
"priority": 10.3,
"product": "/v1/facility/the-fish/products/13",
"resource_uri": "/v1/facility/the-fish/product_variations/38",
"title": "Medium",
"updated": "2020-08-03T12:18:25.364456"
}, {
"created": "2020-08-03T08:41:53.369598",
"facility": "/v1/facility/the-fish",
"id": 39,
"menu": "/v1/facility/the-fish/menus/2",
"modifier_price_multiplicator": "4.00",
"price_gross": "7.99",
"priority": 100.0,
"product": "/v1/facility/the-fish/products/13",
"resource_uri": "/v1/facility/the-fish/product_variations/39",
"title": "Large",
"updated": "2020-08-03T12:18:25.630464"
}, {
"created": "2020-08-03T08:41:53.363895",
"facility": "/v1/facility/the-fish",
"id": 37,
"menu": "/v1/facility/the-fish/menus/2",
"modifier_price_multiplicator": "1.00",
"price_gross": "3.99",
"priority": 5.0,
"product": "/v1/facility/the-fish/products/13",
"resource_uri": "/v1/facility/the-fish/product_variations/37",
"title": "Small",
"updated": "2020-08-03T12:18:25.150822"
}
],
"resource_uri": "/v1/facility/the-fish/menu_widget_product/13",
"title": "Cesar Salad",
"updated": "2020-08-03T12:19:37.393787"
}
Type
any
Create Booking
POST: /facility/{facility_id}/bookings
Creates a new booking in a facility.
Transactional emails will be sent in the language specified using the Accept-Language HTTP header. If none of the specified languages are available, the default language, set in the restaurant settings, will be used. To send a notification to the guest the field 'send_email_receipt' must be set to 'true'.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
201
Create Booking
CURL EXAMPLE
curl -X POST "https://api.resmio.com/v1/facility/{facility_id}/bookings" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
Content-Type: application/json
REQUEST BODY
{
"num": 2,
"date": "2019-08-29T23:00:00.000Z",
"facility_resources": [],
"name": "Test Name",
"email": "test@example.com",
"phone": "016097230000",
"comment": "Some example message for the restaurant owner",
"price_change": 0,
"checksum": "35d3a6247bc42942222f7d26820a432ee4923a9c27e6ba7810f7169779ecf591",
"source": "",
"fb_access_token": null,
"newsletter_subscribe": false,
"resource_group": "",
"resmio_newsletter_subscribe": false,
"booking_deposit": null,
"send_email_receipt": true
}
Type
any
RESPONSE BODY
201
{
"alias": null,
"booking_deposit": null,
"booking_request_parameters": {},
"booking_timespan": 30,
"checksum": "35d3a6247bc42942222f7d26820a432ee4923a9c27e6ba7810f7169779ecf591",
"comment": "Some example message for the restaurant owner",
"created": "2019-08-29T07:52:11Z",
"customer": "/v1/facility/the-fish/customer/3342663",
"customer_bookings": 8,
"customer_cancellations": 2,
"customer_noshows": 0,
"customer_notes": "",
"customer_tags": [],
"date": "2019-08-29T23:00:00Z",
"email": "test@example.com",
"email_confirmation_status": null,
"email_verified": false,
"facility": "/v1/facility/the-fish",
"facility_resources": [
"/v1/facility/the-fish/resources/75027"
],
"fb_access_token": "",
"files": [],
"id": 5348950,
"last_multi_booking": null,
"multi_booking": null,
"name": "Test Name",
"newsletter_subscribe": false,
"notes": "",
"num": 2,
"phone": "016097230000",
"price_change": 0,
"ref_num": "64c",
"resmio_newsletter_subscribe": false,
"resource_group": "",
"resource_uri": "/v1/facility/the-fish/bookings/5348950",
"source": "",
"status": "confirmed",
"status_code": "11cebf21-ba8e-4ea3-9fe2-31d020d30c0a",
"user_cancel_authentication_code": "6dea63df-2051-4cca-81e3-4fc3b0b7a67d",
"tags": [],
"updated": "2019-08-29T07:52:11Z",
"user": null,
"walk_in": false
}
Type
any
Read Public Feedback
GET: /facility/{facility_id}/feedback
Get a list of feedbacks and public comments for a facility with a total count of all available feedbacks. This is only available when enabled by the facility. Add parameter offset to skip a number of feedbacks. Add parameter limit to show more or less then the default number of feedbacks.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Query Parameters
offset
Skip over a number of elements by specifying an offset value for the query
Property | Value |
---|---|
required | false |
type | integer |
examples | 20 |
limit
Limit the number of elements on the response
Property | Value |
---|---|
required | false |
type | integer |
examples | 80 |
Possible Responses
200
Read Public Feedback
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/facility/{facility_id}/feedback?offset=20&limit=80" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"meta": {
"limit": 20,
"next": null,
"offset": 0,
"previous": null,
"total_count": 2
},
"objects": [
{
"created": "2019-06-28T15:31:21Z",
"food_positive": true,
"id": 640056,
"public_comment": "It was super, Thank you!",
"service_positive": true
},
{
"created": "2014-05-12T07:17:10Z",
"food_positive": false,
"id": 2004,
"public_comment": "I think they are selling instant meals.",
"service_positive": false
}
]
}
Type
any
Read Tickets
GET: /facility/{facility_id}/tickets
Get tickets for a facility.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Query Parameters
type
Get tickets specified type (coupon, event).
Property | Value |
---|---|
required | false |
type | string |
examples | event |
is_active
Get only active/deactive tickets.
Property | Value |
---|---|
required | false |
type | boolean |
examples | true |
offset
Skip over a number of elements by specifying an offset value for the query
Property | Value |
---|---|
required | false |
type | integer |
examples | 20 |
limit
Limit the number of elements on the response
Property | Value |
---|---|
required | false |
type | integer |
examples | 80 |
Possible Responses
200
Read Tickets
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/facility/{facility_id}/tickets?type=event&is_active=true&offset=20&limit=80" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"meta": {
"limit": 20,
"next": null,
"offset": 0,
"previous": null,
"total_count": 4
},
"objects": [
{
"amount_paid": 0,
"available": 10,
"begins": "2013-11-29T16:00:00Z",
"capacity": 10,
"conditions": "",
"created": "2013-11-28T09:38:27Z",
"currency": "EUR",
"description": "",
"duration": null,
"ends": null,
"facility": "/v1/facility/the-fish",
"id": 49,
"image": null,
"is_active": false,
"max_party_size": null,
"max_purchases": null,
"min_party_size": null,
"name": "Silvester",
"price": "10.00",
"public_page_url": "https://app.resmio.com/t/1d",
"resource_uri": "/v1/facility/the-fish/tickets/49",
"status": "active",
"tickets_claimed": 0,
"tickets_sold": 0,
"type": "event",
"updated": "2014-03-12T15:47:07Z"
},
{
"amount_paid": 0,
"available": 10,
"begins": "2013-11-29T16:00:00Z",
"capacity": 10,
"conditions": "",
"created": "2013-11-28T09:55:20Z",
"currency": "EUR",
"description": "",
"duration": null,
"ends": null,
"facility": "/v1/facility/the-fish",
"id": 50,
"image": null,
"is_active": false,
"max_party_size": null,
"max_purchases": null,
"min_party_size": null,
"name": "Silvester",
"price": "10.00",
"public_page_url": "https://app.resmio.com/t/1e",
"resource_uri": "/v1/facility/the-fish/tickets/50",
"status": "active",
"tickets_claimed": 0,
"tickets_sold": 0,
"type": "event",
"updated": "2014-03-12T15:47:14Z"
},
{
"amount_paid": 0,
"available": 50,
"begins": "2013-12-03T16:15:00Z",
"capacity": 50,
"conditions": "",
"created": "2013-12-02T10:37:48Z",
"currency": "EUR",
"description": "Test",
"duration": null,
"ends": null,
"facility": "/v1/facility/the-fish",
"id": 51,
"image": null,
"is_active": false,
"max_party_size": null,
"max_purchases": null,
"min_party_size": null,
"name": "Test",
"price": "40.00",
"public_page_url": "https://app.resmio.com/t/1f",
"resource_uri": "/v1/facility/the-fish/tickets/51",
"status": "active",
"tickets_claimed": 0,
"tickets_sold": 0,
"type": "event",
"updated": "2014-03-12T15:47:27Z"
}
]
}
Type
any
Create Booking Deposit
POST: /facility/{facility_id}/booking_deposit
Creates a new booking deposit for a facility.
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
201
Create Booking Deposit
CURL EXAMPLE
curl -X POST "https://api.resmio.com/v1/facility/{facility_id}/booking_deposit" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
Content-Type: application/json
REQUEST BODY
{
"owner_name": "some name",
"owner_email": "some_email@test.com",
"amount": 30.25,
"currency": "EUR"
}
Type
any
RESPONSE BODY
201
{
"amount": 30.25,
"booking_description": null,
"cancel_allowed_without_fees": false,
"converted_amount": null,
"currency": "EUR",
"deposit_data": {},
"deposit_email_date": null,
"deposit_status": "",
"email_date": null,
"employee_name": null,
"employee_resource_uri": null,
"facility": "/v1/facility/the-fish",
"id": 2,
"obfuscated_payment_details": null,
"owner_email": "some_email@test.com",
"owner_name": "some name",
"payment_type": "OUTSTANDING",
"refund_amount": 0.0,
"resource_uri": "/v1/facility/the-fish/booking_deposit/2"
}
Type
any
Create Waitlist Entry
POST: /facility/{facility_id}/waitlist
Creates a new entry on the waitlist
URI Parameters
facility_id
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
201
Create Waitlist Entry
CURL EXAMPLE
curl -X POST "https://api.resmio.com/v1/facility/{facility_id}/waitlist" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
Content-Type: application/json
REQUEST BODY
{
"date": "2020-07-13T09:00:00Z",
"name": "Test test",
"num": 2,
"email": "test@example.com",
"phone": "016097230000",
"is_online": true
}
Type
any
RESPONSE BODY
201
{
"created": "2020-07-13T08:09:38Z",
"date": "2020-07-13T09:00:00Z",
"email": "test@example.com",
"facility": "/v1/facility/the-fish",
"id": 3,
"is_online": true,
"is_walkin": false,
"name": "Test test",
"num": 2,
"phone": "016097230000",
"resource_uri": "/v1/facility/the-fish/waitlist/3"
}
Type
any
Waiter booking status update API
This API endpoint is authenticated with the {restaurant_authentication_code} as part of the URL. Waiters or restaurant owners are using it to confirm or cancel a booking.
Read booking status
GET: /booking_status/{restaurant_authentication_code}
Allows restaurant staff to access the booking status of a booking and its reference number with restaurant_authentication_code
as authentication. The endpoint will return the current status of the booking and the potential status choices that one can use in a PATCH request to update the status of the booking. (E.g. confirm or cancel the booking)
If the booking is "unconfirmed" then available choises for changing the status are "confirmed" and "cancelled". If the bookig has different status than "unconfirmed" then the list of potential choices will be empty.
URI Parameters
restaurant_authentication_code
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
200
Read booking status
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/booking_status/{restaurant_authentication_code}" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"ref_num": "hQlFpm",
"resource_uri": "/v1/booking_status/e6a8482f-7665-4672-87e1-aa1fe3ddc2be",
"restaurant_authentication_code": "e6a8482f-7665-4672-87e1-aa1fe3ddc2be",
"status": "unconfirmed",
"status_choices": [
{
"localized_label": "BestÃĪtigt",
"value": "confirmed"
},
{
"localized_label": "Abgesagt",
"value": "cancelled"
}
]
}
Type
any
Update booking status
PATCH: /booking_status/{restaurant_authentication_code}
Allows someone with the restaurant_authentication_code
to change the booking status. If the booking status is "unconfirmed" then the status can be changed to "confirmed" or "cancelled". If the booking statis is different that "unconfirmed" then the status can not be changed with this API endpoint.
URI Parameters
restaurant_authentication_code
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
202
Update booking status
CURL EXAMPLE
curl -X PATCH "https://api.resmio.com/v1/booking_status/{restaurant_authentication_code}" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
Content-Type: application/json
REQUEST BODY
{
"chosen_status": "confirmed"
}
Type
any
RESPONSE BODY
202
{
"chosen_status": "confirmed",
"ref_num": "hQlFpm",
"resource_uri": "/v1/booking_status/e6a8482f-7665-4672-87e1-aa1fe3ddc2be",
"restaurant_authentication_code": "e6a8482f-7665-4672-87e1-aa1fe3ddc2be",
"status": "confirmed",
"status_choices": []
}
Type
any
Guest booking canel API
This API endpoint is authenticated with the {user_cancel_authentication_code} as part of the URL. Users will use this API endpoint if they want to cancel a booking. The {user_cancel_authentication_code} secret has been returned initially when the booking was created.
Read booking status
GET: /booking_cancel/{user_cancel_authentication_code}
Allows a user to get the current booking status and of a booking with the user_cancel_authentication_code
as authentication.
URI Parameters
user_cancel_authentication_code
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
200
Read booking status
CURL EXAMPLE
curl -X GET "https://api.resmio.com/v1/booking_cancel/{user_cancel_authentication_code}" \
-H "Content-Type: application/json"
REQUEST HEADERS
Content-Type: application/json
RESPONSE BODY
200
{
"detail_url": "https://app.resmio.com/a0ae9a52-875f-4590-b919-55bea475659a/detail",
"facility_name": "the-fish",
"resource_uri": "/v1/booking_cancel/a0ae9a52-875f-4590-b919-55bea475659a",
"status": "unconfirmed",
"user_cancel_authentication_code": "a0ae9a52-875f-4590-b919-55bea475659a"
}
Type
any
Cancel booking
PATCH: /booking_cancel/{user_cancel_authentication_code}
Allows a user to cancel a booking with the user_cancel_authentication_code
as authentication.
URI Parameters
user_cancel_authentication_code
Property | Value |
---|---|
required | true |
type | string |
Header Parameters
Content-Type
The content type of the request. The API currently only understands application/json
Property | Value |
---|---|
required | true |
type | string |
examples | application/json |
Possible Responses
202
Cancel booking
CURL EXAMPLE
curl -X PATCH "https://api.resmio.com/v1/booking_cancel/{user_cancel_authentication_code}" \
-H "Content-Type: application/json" \
-d @request_body
REQUEST HEADERS
Content-Type: application/json
REQUEST BODY
{}
Type
any
RESPONSE BODY
202
{
"detail_url": "https://app.resmio.com/a0ae9a52-875f-4590-b919-55bea475659a/detail",
"facility_name": "the-fish",
"resource_uri": "/v1/booking_cancel/a0ae9a52-875f-4590-b919-55bea475659a",
"status": "cancelled",
"user_cancel_authentication_code": "a0ae9a52-875f-4590-b919-55bea475659a"
}
Type
any