POST api/bookings/bookings

bookings and NewBooking are identical end points, However when implementing please use newBooking end point

Request Information

URI Parameters

None.

Body Parameters

NewBookingBindingModel
NameDescriptionTypeAdditional information
boatNo

As name suggests

integer

None.

marinaCode

As name suggests

string

None.

berthNo

As name suggests

string

None.

startDate

As name suggests

string

None.

endDate

As name suggests

string

None.

createZeroValueInvoice

Creates a 0 value invoice for the booking so it is not invoiced again, the implication is that the payment for the booking has been taken outside of Havenstar and will not be processed through Havenstar either

boolean

None.

BookingValue

Total value of the booking

decimal number

None.

FreeDaysToUse

Number of free days to use

integer

None.

PaymentValue

Value of any payment taken for the booking

decimal number

None.

PaymentReference

Reference for the payment taken

string

None.

PaymentSuccessful

Indicates the payment was successful

boolean

None.

PaymentMessage

Payment message

string

None.

PaymentType

Payment type

string

None.

AdditionalProducts

List of additional products/services to add to the booking

Collection of BookingAdditionalProductModel

None.

Request Formats

application/json, text/json

Sample:
{
  "boatNo": 3030,
  "marinaCode": "WD",
  "berthNo": "AJ03",
  "startDate": "2016-10-14",
  "endDate": "2016-10-15",
  "createZeroValueInvoice": false,
  "BookingValue": null,
  "FreeDaysToUse": null,
  "PaymentValue": 0.0,
  "PaymentReference": null,
  "PaymentSuccessful": false,
  "PaymentMessage": null,
  "PaymentType": null,
  "AdditionalProducts": []
}

multipart/form-data

Sample:
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="boatNo"

1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="marinaCode"

sample string 2
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="berthNo"

sample string 3
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="startDate"

sample string 4
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="endDate"

sample string 5
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="createZeroValueInvoice"

True
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="BookingValue"

1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="FreeDaysToUse"

1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="PaymentValue"

7
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="PaymentReference"

sample string 8
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="PaymentSuccessful"

True
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="PaymentMessage"

sample string 10
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="PaymentType"

sample string 11
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="AdditionalProducts[0].ServiceCode"

sample string 1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="AdditionalProducts[0].Quantity"

2
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="AdditionalProducts[1].ServiceCode"

sample string 1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="AdditionalProducts[1].Quantity"

2
--MultipartDataMediaFormatterBoundary1q2w3e--

Response Information

Resource Description

NewBookingResultBindingModel
NameDescriptionTypeAdditional information
bookingId

As name suggests

integer

None.

Response Formats

application/json, text/json

Sample:
{
  "bookingId": 1
}

multipart/form-data

Sample:
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="bookingId"

1
--MultipartDataMediaFormatterBoundary1q2w3e--