POST api/NewBoat

Returns newly added boat number

Request Information

URI Parameters

None.

Body Parameters

BoatBindingModel
NameDescriptionTypeAdditional information
boatNo

as name suggests

integer

None.

accountCode

as name suggests

string

None.

subAccountCode

as name suggests

string

None.

boatName

as name suggests

string

None.

loa

as name suggests

decimal number

None.

beam

as name suggests

decimal number

None.

draft

as name suggests

decimal number

None.

airDraft

as name suggests

decimal number

None.

manufacturerID

as name suggests

integer

None.

manufacturer

as name suggests

string

None.

modelID

as name suggests

integer

None.

model

as name suggests

string

None.

typeID

as name suggests

integer

None.

type

as name suggests

string

None.

tonnage

as name suggests

decimal number

None.

country

as name suggests

string

None.

insuranceCompany

as name suggests

string

None.

policyNumber

as name suggests

string

None.

policyExpiry

as name suggests

string

None.

marinaCode

As name suggests

string

None.

marinaName

As name suggests

string

None.

expiryDate

Current contract expiry date

string

None.

meterMACSTopUpAvailable

MeterMaCS Top up availability flag

boolean

None.

meterMACSBalance

MeterMACS Balance

decimal number

None.

meterMACSBalanceDate

MeterMACS balance date

date

None.

meterMACSConnected

MeterMACS connectivity flag

boolean

None.

meterMACSPin

MeterMACS pin

integer

None.

meterMACSSocket

MeterMACS socket code attached to

string

None.

customerType

Customer Type

string

None.

customerTypeCode

Customer Type Code

string

None.

canChangeCustomerType

Flag to indicate customer type can be changed

boolean

None.

arrivalDate

Contract start date if resident, date boat arrived if visitor currently in or next booking arrival date

date

None.

departureDate

Next date resident due out or contract end date if not due out, date visitor due out or next booking departure date if not currently in

date

None.

berthNo

Current berth if boat is in, otherwise home berth if resident or next booking berth for visitor

string

None.

notes

List of notes

Collection of NoteModel

None.

chargeDate

Date customer has been charged to for mooring

date

None.

origin

Origin of boat

string

None.

comments

Comments on boat

string

None.

insured

Is the boat insured

boolean

None.

warningMsg

Message displayed to user when selecting boat

string

None.

registrationNo

Boat registration number

string

None.

trailerType

Type of trailer

string

None.

catamaran

Indicates if the boat is a catamaran

boolean

None.

outboard

Indicates if the boat has an outboard motor

boolean

None.

pumpOut

Indicates if the boat has a pump out

boolean

None.

tender

Indicates if the boat has a tender

boolean

None.

trailerStorage

Indicates if the boat requires trailer storage

boolean

None.

engineMake

Boat engine make

string

None.

engineModel

Boat engine model

string

None.

liftingPreferences

Lifting preferences for the boat

string

None.

homeBerth

Home berth of boat

string

None.

ContractUplift

Contract uplift rate

decimal number

None.

FuelCapacity

Fuel capacity of this boat, if known.

integer

None.

FuelType

Fuel type of this boat

string

None.

KeelType

Keel type of this boat

string

None.

HullMaterial

Hull material of this boat

string

None.

MotorType

Motor type of this boat

string

None.

FreeVisitorNightsRemaining

Number of free visitor nights available for the boat

integer

None.

FreeStorageAshoreNightsRemaining

Number of free storage ashore nights available for the boat

integer

None.

Tags

The tags associated with this boat.

BoatTagsBindingModel

None.

Request Formats

application/json, text/json

Sample:
{
  "boatNo": 4567,
  "accountCode": "AJ56",
  "subAccountCode": null,
  "boatName": "Adventure",
  "loa": 12.0,
  "beam": 3.0,
  "draft": 2.0,
  "airDraft": null,
  "manufacturerID": 5,
  "manufacturer": "Beneteau",
  "modelID": 11,
  "model": "Sense 57",
  "typeID": 2,
  "type": "Motor Launch",
  "tonnage": 8.0,
  "country": null,
  "insuranceCompany": "St Margarets Direct",
  "policyNumber": "BT09212092",
  "policyExpiry": "2017-12-01",
  "marinaCode": null,
  "marinaName": null,
  "expiryDate": null,
  "meterMACSTopUpAvailable": false,
  "meterMACSBalance": 0.0,
  "meterMACSBalanceDate": null,
  "meterMACSConnected": false,
  "meterMACSPin": 0,
  "meterMACSSocket": null,
  "customerType": null,
  "customerTypeCode": null,
  "canChangeCustomerType": false,
  "arrivalDate": null,
  "departureDate": null,
  "berthNo": null,
  "notes": null,
  "chargeDate": null,
  "origin": null,
  "comments": null,
  "insured": null,
  "warningMsg": null,
  "registrationNo": null,
  "trailerType": null,
  "catamaran": null,
  "outboard": null,
  "pumpOut": null,
  "tender": null,
  "trailerStorage": null,
  "engineMake": null,
  "engineModel": null,
  "liftingPreferences": null,
  "homeBerth": null,
  "ContractUplift": null,
  "FuelCapacity": null,
  "FuelType": null,
  "KeelType": null,
  "HullMaterial": null,
  "MotorType": null,
  "FreeVisitorNightsRemaining": 0,
  "FreeStorageAshoreNightsRemaining": 0,
  "Tags": null
}

multipart/form-data

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

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

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

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

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

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

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

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

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

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

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

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

sample string 6
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="typeID"

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

sample string 7
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="tonnage"

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

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

sample string 9
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="policyNumber"

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

sample string 11
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="marinaCode"

sample string 12
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="marinaName"

sample string 13
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="expiryDate"

sample string 14
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="meterMACSTopUpAvailable"

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

16
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="meterMACSBalanceDate"

2026-03-31T17:31:30.9841418+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="meterMACSConnected"

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

18
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="meterMACSSocket"

sample string 19
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="customerType"

sample string 20
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="customerTypeCode"

sample string 21
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="canChangeCustomerType"

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

2026-03-31T17:31:30.9841418+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="departureDate"

2026-03-31T17:31:30.9841418+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="berthNo"

sample string 23
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="notes[0].noteId"

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

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

sample string 3
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="notes[0].note"

sample string 4
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="notes[0].marinaCode"

sample string 5
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="notes[1].noteId"

1
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="notes[1].author"

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

sample string 3
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="notes[1].note"

sample string 4
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="notes[1].marinaCode"

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

2026-03-31T17:31:30.9841418+01:00
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="origin"

sample string 24
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="comments"

sample string 25
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="insured"

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

sample string 26
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="registrationNo"

sample string 27
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="trailerType"

sample string 28
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="catamaran"

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

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

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

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

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

sample string 29
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="engineModel"

sample string 30
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="liftingPreferences"

sample string 31
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="homeBerth"

sample string 32
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="ContractUplift"

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

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

sample string 33
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="KeelType"

sample string 34
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="HullMaterial"

sample string 35
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="MotorType"

sample string 36
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="FreeVisitorNightsRemaining"

37
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="FreeStorageAshoreNightsRemaining"

38
--MultipartDataMediaFormatterBoundary1q2w3e
Content-Disposition: form-data; name="Tags.Boat[0]"

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

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

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

sample string 2
--MultipartDataMediaFormatterBoundary1q2w3e--

Response Information

Resource Description

NewBoatResultBindingModel
NameDescriptionTypeAdditional information
boatNo

Unique code of new boat record

integer

None.

accountCode

Unique code of new boat record this will be the same as account codde if this is the first boat added to the customer's account

string

None.

resultCode

As name suggests

integer

None.

Response Formats

application/json, text/json

Sample:
{
  "boatNo": 1,
  "accountCode": "sample string 2",
  "resultCode": 3
}

multipart/form-data

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

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

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

3
--MultipartDataMediaFormatterBoundary1q2w3e--