Connections
The outside systems each module reads from, how to connect them, and what each status means. All mocked in this build.
Every connector in this build is a mock. The demo shows generated statuses and makes no outside requests. Verify each provider, its API and its licence before launch.
Where to connect
Each module has an Integrations page next to its data pages, for example /app/integrations/predict. It lists the connectors that module reads, with a status, the last sync and anything that needs fixing. Settings → Connections lists every connector in one place.
Both pages open the same Connect / Manage dialog. A connector used by several modules, such as the onboard MQTT gateway (Fleet monitor, Predictive maintenance and Emissions), is one connection: connect it once and every module sees it.
- Who can change connections: owners and admins. Everyone else sees the pages read-only.
- What a person sets: whether the connector is on, the account it connects as, and for gateways an
httpsendpoint. Endpoints go through the URL guard in the app and anhttpscheck in the database. - What only the sync service sets: status, last sync and the problem text. Nobody can mark a broken connection as healthy by hand (invariant 13 on the Security page).
Statuses
| Status | Meaning |
|---|---|
| Connected | Data arrived on the last sync. |
| Syncing | A sync is running now. |
| Pending first sync | Someone connected it; no data has arrived yet. In local database mode connections stay here, because no sync worker exists in this build. |
| Needs attention | Data still arrives, but something will break soon (for example a certificate that expires in 9 days). |
| Error | The last sync failed. The card says why. |
| Not connected | Switched off, or never connected. |
The demo workspace has a fixed mix of statuses so every state can be seen: Siemens needs attention, Iridium is in error, SAP is syncing, and some connectors are not connected.
Logos
Connector logos come from one shared component in @pruva/brand/logos. The same component is used by the app, the marketing site and these docs. Brand icons are from simple-icons (CC0 icon data; each logo stays a trademark of its owner). Providers that simple-icons doesn't cover get a monogram tile.
All connectors
Fleet map /app/integrations/monitor
AIS positions
Position, speed and heading for every vessel.
Used by: Fleet map · ID spire-ais · connects by api key
Engine telemetry
Machinery sensor readings from the edge box on each vessel.
Used by: Fleet map, Predictive maintenance, Planned maintenance, Emissions ledger · ID mqtt-gateway · connects by gateway
Machinery historian (OPC UA)
Hourly machinery history and alarms from the ship’s automation system.
Used by: Fleet map, Predictive maintenance, Planned maintenance · ID siemens-historian · connects by gateway
AI safety cameras /app/integrations/cameras
Onboard video
Reads camera streams from the network video recorder on each vessel.
Used by: AI safety cameras · ID onvif-nvr · connects by gateway
Onboard GPU
Runs the event models next to the cameras; only events and stills go ashore.
Used by: AI safety cameras · ID edge-ai-box · connects by gateway
AI model
Analyses a still a person uploads into camera events when a key is set; the still is not kept.
Used by: AI safety cameras · ID anthropic-vision · connects by api key
Predictive maintenance /app/integrations/predict
Engine telemetry
Machinery sensor readings from the edge box on each vessel.
Used by: Fleet map, Predictive maintenance, Planned maintenance, Emissions ledger · ID mqtt-gateway · connects by gateway
Machinery historian (OPC UA)
Hourly machinery history and alarms from the ship’s automation system.
Used by: Fleet map, Predictive maintenance, Planned maintenance · ID siemens-historian · connects by gateway
Turbocharger data
Turbocharger speed, surge events and service intervals.
Used by: Predictive maintenance · ID abb-turbo · connects by api key
Engine maker data
Engine maker diagnostics for MTU auxiliary engines.
Used by: Predictive maintenance · ID rolls-royce-mtu · connects by oauth
Satcom crew messaging
Sends Notify crew messages to the bridge over satcom.
Used by: Predictive maintenance · ID iridium · connects by api key
Crew messaging
Sends Notify crew messages to the chief engineer’s phone in port.
Used by: Predictive maintenance, Noon report & operations, Crew · ID whatsapp · connects by oauth
Connected insurance /app/integrations/insurance
Insurer exchange
Insurer data packs and premium adjustment decisions.
Used by: Connected insurance · ID insurer-portal · connects by portal
Insurer data room
Shares the quarterly data pack with brokers in a data room.
Used by: Connected insurance · ID box-dataroom · connects by oauth
Noon report & operations /app/integrations/noon
Voice noon reports
Takes the master's spoken noon report over the app or a phone call and fills the form.
Used by: Noon report & operations · ID livekit-voice · connects by api key
Crew messaging
Sends Notify crew messages to the chief engineer’s phone in port.
Used by: Predictive maintenance, Noon report & operations, Crew · ID whatsapp · connects by oauth
Marine weather
Wind, waves and currents along each vessel's track to check noon reports.
Used by: Noon report & operations · ID stormglass · connects by api key
Voyage performance /app/integrations/voyage
Marine weather
Free wave and wind forecasts at the vessel's position (database mode, when switched on).
Used by: Voyage performance · ID open-meteo-marine · connects by api key
Weather routing
Routing advice and weather for each voyage.
Used by: Voyage performance · ID stormgeo-routing · connects by api key
Chartering & voyage P&L /app/integrations/chartering
Freight indices
Route assessments and indices for voyage estimates.
Used by: Chartering & voyage P&L · ID baltic-exchange · connects by api key
Chartering email
Reads cargo orders and positions from the chartering inbox.
Used by: Chartering & voyage P&L · ID shipfix-inbox · connects by oauth
Cargo & containers /app/integrations/cargo
Container events
Carrier container events in the DCSA standard for each box on a sailing.
Used by: Cargo & containers · ID dcsa-track-trace · connects by api key
Bookings and status messages
Booking, load list and status messages from the carrier.
Used by: Cargo & containers · ID carrier-edi · connects by gateway
Port calls & agency /app/integrations/port
Disbursement accounts
Proforma and final disbursement accounts from port agents.
Used by: Port calls & agency · ID da-desk · connects by oauth
Port call times
Berth, arrival and departure times from the port community system.
Used by: Port calls & agency · ID port-call-api · connects by api key
Planned maintenance /app/integrations/pms
Machinery historian (OPC UA)
Hourly machinery history and alarms from the ship’s automation system.
Used by: Fleet map, Predictive maintenance, Planned maintenance · ID siemens-historian · connects by gateway
Engine telemetry
Machinery sensor readings from the edge box on each vessel.
Used by: Fleet map, Predictive maintenance, Planned maintenance, Emissions ledger · ID mqtt-gateway · connects by gateway
Class and survey status
Certificate and survey dates from the class society.
Used by: Planned maintenance, Certificates & documents · ID dnv-veracity · connects by oauth
Dry dock /app/integrations/drydock
Shipyard quotes
Yard quotes and progress reports for the dry-dock specification.
Used by: Dry dock · ID yard-portal · connects by portal
Class survey dates
Survey windows from the class society to plan the docking.
Used by: Dry dock · ID class-survey-planner · connects by oauth
Procurement /app/integrations/procurement
Supplier marketplace
Sends RFQs to marine suppliers and brings their quotes back.
Used by: Procurement · ID shipserv · connects by api key
Item codes
IMPA codes and descriptions for stores and spares.
Used by: Procurement · ID impa-catalogue · connects by api key
Inventory /app/integrations/inventory
Stock counts
Counts spares and stores on board with a handheld scanner.
Used by: Inventory · ID barcode-scanner · connects by gateway
Hazardous materials
The inventory of hazardous materials for each vessel.
Used by: Inventory · ID ihm-register · connects by portal
Certificates & documents /app/integrations/documents
Class and survey status
Certificate and survey dates from the class society.
Used by: Planned maintenance, Certificates & documents · ID dnv-veracity · connects by oauth
Certificate scans
Scanned certificates kept next to each record.
Used by: Certificates & documents · ID dropbox-certs · connects by oauth
Emissions ledger /app/integrations/emissions
Engine telemetry
Machinery sensor readings from the edge box on each vessel.
Used by: Fleet map, Predictive maintenance, Planned maintenance, Emissions ledger · ID mqtt-gateway · connects by gateway
Fuel records
Bunker delivery notes and fuel purchases for emissions totals.
Used by: Emissions ledger, Reports & dashboards · ID sap-bunkers · connects by oauth
Regulatory filing
EU MRV and EU ETS report submission.
Used by: Emissions ledger · ID thetis-mrv · connects by portal
Regulatory filing
IMO DCS fuel oil data submission through the flag state.
Used by: Emissions ledger · ID imo-gisis · connects by portal
HSEQ & risk /app/integrations/hseq
Email to records
Reads incident and near-miss reports sent from the ships by email.
Used by: HSEQ & risk · ID incident-email · connects by oauth
Audit findings
Audit findings and corrective actions from the class society.
Used by: HSEQ & risk · ID class-qhse · connects by portal
Vetting /app/integrations/vetting
Vetting inspections
SIRE 2.0 inspection reports and observations.
Used by: Vetting · ID ocimf-sire · connects by portal
Vessel questionnaires
The vessel particulars questionnaire charterers ask for.
Used by: Vetting · ID q88 · connects by api key
Crew /app/integrations/crew
Email to records
Reads crewing and operations email and drafts crew-change and port-call records.
Used by: Crew · ID gmail-inbox · connects by oauth
Crew messaging
Sends Notify crew messages to the chief engineer’s phone in port.
Used by: Predictive maintenance, Noon report & operations, Crew · ID whatsapp · connects by oauth
Finance /app/integrations/finance
Accounting
Invoices and ledger entries per vessel.
Used by: Finance · ID xero · connects by oauth
Exchange rates
Free daily ECB reference rates for multi-currency amounts (no key; called only in DB mode when connected).
Used by: Finance · ID frankfurter-fx · connects by api key
Reports & dashboards /app/integrations/bi
Fuel records
Bunker delivery notes and fuel purchases for emissions totals.
Used by: Emissions ledger, Reports & dashboards · ID sap-bunkers · connects by oauth
Spreadsheet export
Sends KPI and OPEX tables to a shared sheet each week.
Used by: Reports & dashboards · ID google-sheets · connects by oauth
AI
The assistant's model provider, Anthropic, appears under Settings → Connections as AI. It's off in the demo, and no model is called in this build.
Verify before launch
- Spire Maritime: the AIS API shape and update rate, and whether the licence allows showing positions to an insurer.
- Siemens SIMATIC historian: OPC UA tag mapping per vessel.
- ABB Turbocharging and Rolls-Royce Power Systems: the data-sharing agreements with each engine maker.
- Iridium Certus and WhatsApp Business: cost per message and delivery receipts.
- SAP: the bunker delivery note object model.
- EMSA THETIS-MRV and IMO GISIS: current submission formats.
- North Quay Mutual portal and Box: the insurer API and the consent wording.
- DNV Veracity and Dropbox: OAuth scopes.