Skip to main content

The Vessel API offers a new way of interacting with your fleet. Today we announce an upgrade to this powerful tool, extending the functionality to include the ability to plan voyages.

The Vessel API positions you at the centerpoint of all data from every sensor, system, piece of equipment and crew member on your vessel and across your fleet. This is the next generation of ship-to-shore communication, enabling you to integrate maritime data directly into your workflows, business intelligence tools, and applications.

The new feature enables you to integrate your planning tools with the Onboard Platform, automate planning and billing processes, gain complete visibility over the state of your fleet, and synchronize activities with your supply chain in real time.

How the new features on the Vessel API work

Every maritime business has a planning or scheduling tool. Currently, this planning is sent to the vessel in a variety of ways, including email, phone, or other. After starting the voyage, progress is manually recorded by the crew and often at regular intervals a report is sent back. These reports are again manually processed and shared and used for multiple purposes. With the Vessel API this whole process can now be automated. Let’s have a look how easy it is to plan, modify, and cancel voyages, and track voyage progress.

1. Create a voyage

The first and most obvious new feature would be scheduling a voyage. You can schedule a voyage like this:

mutation ScheduleVoyage {
  scheduleVoyage(
    input: {
      name: "Onyx - Personnel drop off"
      scheduled: "2021-09-29T12:30:00+02:00"
      destinationLocation: "ZRP-1"
      shipId: "0ed19b8e-25f6-4feb-bbe1-8f435847c2a6"
      remarks: "Bon voyage!"
    }
  ) {
    id
    name
    status
  }
}

As you can see, this includes key information including timing, destination, location, the ship’s ID, and so on, in a format that humans can understand as well as machines. This will schedule a new voyage for the specified ship to undertake. It will pop up on the captain's tablet on the vessel moments after it is created.

2. Modify a voyage

The maritime industry is inherently unpredictable, and planning changes need to be made frequently. The below example shows you how you can adjust the details of a voyage.

mutation ModifyVoyage {
  updateVoyage(
	input: {
  	id: "a22675df-9525-4bc0-b2da-6e1cf6b4de91"
  	name: "Onyx - Personnel drop off"
  	scheduled: "2021-09-30T12:30:00+02:00"
  	destinationLocation: "ZRP-1"
	}
  ) {
	id
	name
	status
  }
}

3. Cancel a voyage

You can also cancel a voyage for one vessel and reschedule it with another, if a vessel finishes a voyage or task early and has some time for a bit of extra work.

mutation CancelVoyage {
  cancelVoyage(input: { id: "a22675df-9525-4bc0-b2da-6e1cf6b4de91" }) {
	id
	status
  }
}

4. Retrieve voyage details

The Vessel API enables you to search through any voyage, including those that are in progress and retrieve all voyage details. With this example, you get a list of all the voyages that are in progress. And with it you retrieve the voyage activities, its duration so far, and what the current location of the ship is.

query RetrieveVoyage {
  voyages(where: { statusIn: [started] }) {
    ship {
      id
      name
      position {
        track {
          dateTime
          longitude
          latitude
        }
      }
    }
    id
    name
    remarks
    status
    pickUpLocation
    destinationLocation
    started
    finished
    duration
    fuelConsumption {
      combined {
        liters
      }
    }
  }
}

With the details of in-progress voyages, you may be triggered to apply some planning changes to ensure you are making optimal use of your vessels or you may share this information with your supply chain partners in order to synchronize activities and work better together.

5. Automate billing process or emmission reporting

At the end of every voyage, you can automate your billing processes or maybe you need to report on the carbon footprint for each trip last month. You can get that information by issuing this query:

query VoyagesByShip {
  ships {
    name
    voyages(
      where: {
        between: {
          from: "2021-08-01T00:00:00+02:00"
          until: "2021-09-01T00:00:00+02:00"
        }
      }
    ) {
      name
      pickUpLocation
      destinationLocation
      started
      finished
      duration
      speedThroughWater {
        speed {
          nauticalMiles
        }
      }
      fuelConsumption {
        combined {
          liters
        co2Emission
        }
      }
    }
  }
}

This should produce a neat list with line items for your invoices or this month's carbon emissions report.

This is just a small selection of some of the things you can do with the new feature of the Vessel API. For further details, visit the documentation that can be found in Onboard’s online query tool.

Powerful new features to supercharge your gains

The new features of the Vessel API give you the power to supercharge efficiency gains, and the examples above are just a few of many ways you can utilize these new features to improve operational efficiency and reduce carbon emissions. Remember: efficiency gains are important now, but as carbon pricing is introduced and/or pressure from stakeholders to objectively measure and drive down emissions increases, maritime businesses that act on this opportunity now will be best positioned to beat the carbon cost curve and win in our low-carbon future.

To find out more, contact us.

More Onboard news