Documentation

Introduction

The NautiX concept consists of three data feeds:

  • accounts.xml contains an overview of all dealers exporting from Portal A to Portal B. this part is optional and recommended for boat markets with multiple feeds only

  • adverts.xml contains all adverts of one dealer - this is the most important and mandatory feed

  • status.xml this optional part is currently still in development

This documentation will cover mainly the adverts.xml feed and its basic principles. For all possible XML nodes and values, please refer to the sample XML and the XSD schema. The feed can be validated and checked with the Validator. The validator will provide you with detailed error messages on how to improve your feed.

A complete list with all available boat types in NautiX can be found here.

All changes to the interface are documented in our Changelog.

1. Empty Values

If you do not have information for a node, it must be omitted; leave away the node. Do not send empty values or false.

2. Account Node

The account node contains all informations and adverts of one broker/client/dealer:

<account token="54d481e07132d3e1944c20ea933e8bdb" status="active">

The token is a unique numeric or alphanumeric ID of the account.

3. Advert Node & Required Fields

Each advert must be identified with a unique numeric or alphanumeric ID:

<advert id="123" type="boat" purpose="sale" status="active" modified="2020-01-29T15:02:12+01:00" >

All attributes are required. Inactive adverts can be delivered without subnodes, whereas active adverts must be sent with the following required data:

  • advert_data.office_id broker/office details assigned to this object

  • sale_data.sale_class information whether the object is new or used

  • sale_data.price either asking price + currency or type=on-request

  • sale_data.location.country position of the object (if you do not know the location country of the boat use the broker address country as a compromise)

Required data for advert.type=boat:

  • boat_data.boat_types at least one boat type, eg. sail-yacht (list with all boat types and categories)

  • boat_data.model model name of the boat

  • boat_data.dimensions.loa boat length (exception: boat types with prefixes "pwc-..." or "small-...")

Required data for advert.type=trailer:

  • trailer_data.model model name of the trailer

Required data for advert.type=mooring:

  • mooring_data.title descriptive title

4. Boat Condition

Please try to send or map the values according to this definition:

  • as-new: Like new or has never been used. No scratches or wear.

  • good: Lightly used, with light scratches or minor cosmetic wear, but no mechanical issues.

  • fair: Light scratches and wear from previous use and some light mechanical or cosmetic defects.

  • poor: Visible signs of previous use, substantial work is required. But the boat is still fit to drive / operable.

  • damaged: Substantial mechanical issues, defect, not operable without yard work.

Please note:
The condition node is not allowed for new boats (new/new-instock/new-inorder/new-onorder)

5. Images and Documents

All images and documents such as PDF files have to be provided with an URL linking to the resource on the sending portal's server:

<images>    
   <image type="image/jpeg" caption="Interior" md5="aa41efe0a1b3eeb9bf303e4561ff8392">             https://d3tvazj243kxep.cloudfront.net/fotos/9CzU564F/11516-large.jpg
   </image>
</images>

The receiving portal will copy the files and host it on its own server. To detect any changes in the source file, the XML contains an md5-attribute with the MD5 checksum of the file. It must be a real checksum of the data file, not any random hash string.
There is no attribute for the primary image. The main picture must be the first <image> node, and the other images must be in the correct order.

6. Engine Data

For a twin-engine boat, send the engine data for each engine. If you do not have detailed information about each engine, you just copy the <engine>-node according to the engine quantity of the boat.

<engine_data>
    <engine>
      <engine_type>inboard</engine_type>
      <power unit="hp">150</power>
    </engine>
    <engine>
      <engine_type>inboard</engine_type>
      <power unit="hp">150</power>
    </engine>
</engine_data>

Starting with NautiX v1.1 the engine count is additionally defined in boat_data.drive.number_of_engines

If the boat is sold without an engine, please set boat_data.drive.no_engine to true

7. Equipment Data

The nodes in equipment_data can either contain a text with a further description of the item or just a boolean value true if the item is available on the boat.

<equipment_data>
   <navigation>
     <radar>Garmin Fantom 18</radar>
     <vhf>true</vhf>
   </navigation>
</equipment_data>

To send additional equipment items which are not defined in the NautiX XSD schema, please make use of the node additional_custom:

<equipment_data>
   <additional_custom>
      <item>autopilot repeater (Raymarine i70, new in 2018)</item>
  </additional_custom>
</equipment_data>

Create a new <item> node for each single feature and use English descriptive names. If you have additional text for an item, please use brackets.

8. Additional Remarks and Special Cases

Tankage

<tanks>
   <fuel unit="l" volume="1000" material="stainless" amount="2">true</fuel>
</tanks>

Volume is the total capacity of all tanks. In the above example, it could be 2x500 litres.


Cabins & Berths
The number of cabins refers to the number of cabins, whereas the number of berths refers to the number of persons that can be accommodated. As an example: a cabin with a queen size bed counts as 1 cabin with 2 berths, whereupon the berth type can be specified with double. (see example below)

The number in the attribute total="6" does not need to be a sum of all sub-nodes. If you have "4+2" in your system and cannot map the exact berth types of the NautiX schema, try to provide as much details as possible:

<cabins total="1">
   <cabin type="master" position="aft" amount="1">Aft Cabin with queensize bed</cabin>
</cabins>
<berths total="6">
   <berth type="double">2</berth>
   <berth type="saloon">2</berth>
</berths>


Boat incl. trailer
If a boat is being sold with a trailer, there are two possible ways to put it into the feed:
a) You have not more information about the trailer
=> Just put it into the boat equipment:

<equipment_data>
     <additional_custom>
         <item>incl. trailer</item>
     </additional_custom>
</equipment_data>


b) You have more information about the trailer
=> Use the node <trailer_data> inside of <advert type="boat">

<trailer_data>
     <braked>false</braked>
     <model>Harbeck 450A</model>
</trailer_data>