POST api/boatyard/NewBooking
Creates a new works order and associated resource bookings. Sends an email to the marina and customer, and an SMS to the customer, if they have an InternalUse value set for them.
Request Information
URI Parameters
None.
Body Parameters
NewBoatyardBookingRequestModel| Name | Description | Type | Additional information |
|---|---|---|---|
| BoatNo |
The boat to create the works order for. |
integer |
Required |
| MarinaCode |
The marina to create the works order at. |
string |
Required |
| WorksItems |
The works items to create for this works order. |
Collection of WorksItemModel |
Required |
Request Formats
application/json, text/json
Sample:
{
"BoatNo": 1442,
"MarinaCode": "HM",
"WorksItems": [
{
"BookingDateTime": "2026-03-30T12:00:00+01:00",
"ServiceCode": "C19",
"BookingDurationMinutes": 45,
"PreferredResourceId": 1,
"Note": null
},
{
"BookingDateTime": "2026-03-31T09:15:00+01:00",
"ServiceCode": "C21",
"BookingDurationMinutes": 15,
"PreferredResourceId": null,
"Note": null
}
]
}
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="WorksItems[0].BookingDateTime" 2026-03-30T15:50:27.5913589+01:00 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[0].ServiceCode" sample string 2 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[0].BookingDurationMinutes" 1 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[0].PreferredResourceId" 1 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[0].Note" sample string 3 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[1].BookingDateTime" 2026-03-30T15:50:27.5913589+01:00 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[1].ServiceCode" sample string 2 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[1].BookingDurationMinutes" 1 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[1].PreferredResourceId" 1 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksItems[1].Note" sample string 3 --MultipartDataMediaFormatterBoundary1q2w3e--
Response Information
Resource Description
NewBoatyardBookingResponseModel| Name | Description | Type | Additional information |
|---|---|---|---|
| WorksOrderId |
The created works order's ID. |
integer |
None. |
| FullWorksOrderId |
The created works order's ID with marina code prefix. |
string |
None. |
Response Formats
application/json, text/json
Sample:
{
"WorksOrderId": 1669,
"FullWorksOrderId": "MA001669"
}
multipart/form-data
Sample:
--MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="WorksOrderId" 1 --MultipartDataMediaFormatterBoundary1q2w3e Content-Disposition: form-data; name="FullWorksOrderId" sample string 2 --MultipartDataMediaFormatterBoundary1q2w3e--