Skip to content

B2B Marketplace service endpoints

General headers

Header Name Type Description
Ocp-Apim-Subscription-Key string Appropriate subscription key you can get in the developer portal
Accept-Timezone string Supply a TimeZone id property acquired from Infocenter /timezones route in order to get data with desired time offset. The default is UTC.
Content-Type string default: application/json;charset=UTF-8
Use a different charset if your application is not sending the data in utf-8. for example: application/json;charset=ISO-8859-1

Business trail

url verb request response description
/businesstrail POST BusinessTrail empty Creates a new Business-trail entry
or returns BadRequest and validation messages

Order (shopping cart)

name url verb request response description
create order /orders POST Order OrderUpdateResponse if the object is technically correct it is created even when there are validation errors
update order /orders/{id} PUT Order OrderUpdateResponse if the object is technically correct it is updated even when there are validation errors
get a single order /orders/{id} GET id (orderNumber) OrderUpdateResponse Can be used to poll the order status or to get other known orders
get all ticket from the order /orders/{id}/tickets GET id (orderNumber) Ticket[]
delete order /orders/{id} DELETE id (orderNumber) 200: -
error: OrderUpdateResponse
depending on the status of the order it removes it from the database or sets the status to deleted or cancelled.
create order-item /orders/{id}/items POST id (orderNumber)
OrderItem
OrderItemUpdateResponse add new order item to existing order
update order-item /orders/{id}/items/{itemId} PUT id (orderNumber)
itemId (orderItemNumber)
OrderItem
OrderItemUpdateResponse update existing order item in the order
get order-item /orders/{id}/items/{itemId} GET id (orderNumber)
itemId (orderItemNumber)
OrderItem
OrderItemUpdateResponse get existing order item in the order
remove order-item /orders/{id}/items/{itemId} DELETE id (orderNumber)
itemId (orderItemNumber)
OrderItem
200: -
error: OrderItemUpdateResponse
delete existing order item in the order
get all additional properties /orders/{id}/additionalproperty GET id (orderNumber) PropertyValueUpdateResponse get all additional properties in the order
get additional property /orders/{id}/additionalproperty/{propertyId} GET id (orderNumber)
propertyId
PropertyValueUpdateResponse get existing additional property in the order
create additional property /orders/{id}/additionalproperty POST id (orderNumber)
PropertyValue
PropertyValueUpdateResponse add new additional property to existing order
update order-item /orders/{id}/additionalproperty/{propertyId} PUT id (orderNumber)
propertyId
PropertyValue
PropertyValueUpdateResponse update existing additional property in the order
remove order-item /orders/{id}/additionalproperty/{propertyId} DELETE id (orderNumber)
propertyId
200: -
error: PropertyValueUpdateResponse
delete existing additional property in the order
find offers /orders/{id}/offers POST id (orderNumber)
ProductConfiguration
FindOfferResponse returns list of the offer bundles for provided product configurations
place order /orders/{id}/place PUT id (orderNumber) OrderUpdateResponse moves the order forward to placed and goes through all statuses
init order pay /orders/{id}/payment PUT PaymentRequest 200: -
PaymentResponse
cancel order /orders/{id}/cancel DELETE id (orderNumber)
200: -
error: OrderUpdateResponse
cancel all orderItems which is possible to cancel
update customer /orders/{id}/customer PUT id (orderNumber)
Person
OrderUpdateResponse updates the order with the person provided in the body
update billing address /orders/{id}/billingaddress PUT id (orderNumber)
FullAddress
OrderUpdateResponse updates the order billing address with address provided in the body
update shipping address /orders/{id}/shippingaddress PUT id (orderNumber)
FullAddress
OrderUpdateResponse updates the order shipping address with address provided in the body
delete billing address /orders/{id}/billingaddress DELETE id (orderNumber) OrderUpdateResponse removes the order billing address
delete shipping address /orders/{id}/shippingaddress DELETE id (orderNumber) OrderUpdateResponse removes the order shipping address

Note

If there are validation errors, http status code will be 400.

Product

name url verb request response
List Products /products GET ProductListRequest ProductsResponse
List of product availabilities /productavailability POST ProductAvailabilityRequest ProductAvailabilityResponse
List of product variant availabilities /productvariantavailability POST ProductVariantAvailabilityRequest ProductVariantAvailabilityResponse

Note

Whenever possible we try to supply information for the next 60 days. If there is no entry in the result for a specific day for the requested product or variant it means that we do not have any availability information, if there is an entry and the count=0, then the product is not available that day.

Note

For table reservation we try to supply information for the next 20 days. We create product and product variant availability entries.
Product and product variant availability entries have same values inside and there is no difference what to use.
Table reservation availability entry have additionaly AreaServed property which contains id of food establishment.
For Foratable and Aleno we do not provide actual amount of seats but just a possibility to host particular amount of guests on particular day.
For Resmio we provide actual amount of seats.

ProductAvailabilityRequest

Property Type Description
dateFrom DateTime? starting date of the period to query
dateUntil DateTime? end date of the period to query
availableDatesOnly bool true in the result are only entries with availabilities (with Count more than 0)
product string[] list of products to query
сontinuationToken string used for pagination
top int number of items in result
includeCount bool if there is total items count in response
partner string

ProductVariantAvailabilityRequest

Property Type Description
dateFrom DateTime? starting date of the period to query
dateUntil DateTime? end date of the period to query
availableDatesOnly bool true in the result are only entries with availabilities (with Count more than 0)
ProductVariant string[] list of product variants to query
сontinuationToken string used for pagination
top int number of items in result
includeCount bool if there is total items count in response
partner string

ProductAvailabilityResponse

Property Type Description
productIdentifier string
@product string full url to load the product
date DateTime the date of the availability
count int count of available seats
- an entry with count 0 means no availability
- no entry in the database or result means no information
service string the service identifier

ProductVariantAvailabilityResponse

Property Type Description
productIdentifier string
ProductVariantIdentifier string
@product string full url to load the product
@productVariant string full url to load the product variant
date DateTime the date of the availability
count int count of available seats
- an entry with count 0 means no availability
- no entry in the database or result means no information
service string the service identifier

OrderUpdateResponse

Property Type Description
validationMessages ValidationMessage[] validation messages occured during the order processing
order Order order object and terms to accept
itemOffers OrderItemResponse

OrderItemUpdateResponse

Property Type Description
validationMessages ValidationMessage[] validation messages occured during the order processing
orderItem OrderItem order item object
itemOffers OrderItemResponse

PropertyValueUpdateResponse

Property Type Description
validationMessages ValidationMessage[] validation messages occured during the order processing
propertyValues PropertyValue[] additional property objects

FindOfferResponse

Property Type Description
validationMessages ValidationMessage[] messages from the state machine
offerBundle OfferBundle[] offers to order items if there must be something chosen by the client

ProductListRequest

Property Type Description
project string related project
updatedSince string
additionalType string
category string
select string
identifiers string
сontinuationToken string used for pagination
top int number of items in result
includeCount bool if there is total items count in response
partner string

PaymentRequest

Property Type Description
reference string Any description. It would be set in payment details of the order

PaymentResponse

Property Type Description
validationMessages ValidationMessage[] messages from the state machine
PaymentData OrderPaymentDetailsResponse The resulting object in the state before the order is processed. With set paymentType and reference

OrderPaymentDetailsResponse

Property Type Description
PaymentType string Type of payment. (B2B)

Accept terms

To accept the terms and conditions inside the order and any time during the process.
This endpoint is using the same objects like the terms-endpoint in the profile service.

url verb request response
/orders/{id}/terms/{termCode} PUT TermVersionCheckRequest TermVersionCheck

Info

Accepting the terms by using this call does not change the status of the order.

OpenAPI document

All methods and response models can be viewed in the Developer Portal. To generate an API client you can use the following URLs without user authentication but still with the Subscription Key in the Header (Ocp-Apim-Subscription-Key) or as Query Parameter (subscription-key=<your-surbscription-key>):