POST api/boatyard/ServiceAvailability

Returns a list of boatyard timeslots for a given service.

Request Information

URI Parameters

None.

Body Parameters

ListBoatyardServiceAvailabilityRequestModel
NameDescriptionTypeAdditional information
Date

The date to list resource availability for.

date

Required

MarinaCode

The marina to list resource availability for.

string

Required

ServiceCode

The service to list resource availability for.

string

Required

BookingDurationMinutes

The duration of the booking planned. This must be a multiple of the service's default booking duration.

integer

Required

Range: inclusive between 1 and 1440

Request Formats

application/json, text/json

Sample:
{
  "Date": "2026-03-30T00:00:00+01:00",
  "MarinaCode": "HM",
  "ServiceCode": "C19",
  "BookingDurationMinutes": 45
}

multipart/form-data

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

2026-03-30T16:27:07.8536237+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="MarinaCode"

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

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

4
--MultipartDataMediaFormatterBoundary1q2w3e--

Response Information

Resource Description

ListBoatyardServiceAvailabilityResponseModel
NameDescriptionTypeAdditional information
Slots

A list of slots that match the requested parameters.

Collection of SlotModel

None.

Response Formats

application/json, text/json

Sample:
{
  "Slots": [
    {
      "ResourceId": 1,
      "ResourceDescription": "Resource 1",
      "SlotStart": "2026-03-30T12:00:00+01:00",
      "SlotEnd": "2026-03-30T12:45:00+01:00"
    },
    {
      "ResourceId": 1,
      "ResourceDescription": "Resource 1",
      "SlotStart": "2026-03-30T12:30:00+01:00",
      "SlotEnd": "2026-03-30T13:15:00+01:00"
    },
    {
      "ResourceId": 2,
      "ResourceDescription": "Resource 2",
      "SlotStart": "2026-03-30T12:00:00+01:00",
      "SlotEnd": "2026-03-30T12:45:00+01:00"
    }
  ]
}

multipart/form-data

Sample:
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[0].ResourceId"

1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[0].ResourceDescription"

sample string 2
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[0].SlotStart"

2026-03-30T16:27:07.8536237+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[0].SlotEnd"

2026-03-30T16:27:07.8536237+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[1].ResourceId"

1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[1].ResourceDescription"

sample string 2
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[1].SlotStart"

2026-03-30T16:27:07.8536237+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Slots[1].SlotEnd"

2026-03-30T16:27:07.8536237+01:00
--MultipartDataMediaFormatterBoundary1q2w3e--