Navis (Kaleris) · Capability

Navis N4 Terminal Operating System REST API — Vessel Visits

Navis N4 Terminal Operating System REST API — Vessel Visits. 3 operations. Lead operation: List vessel visits. Self-contained Naftiko capability covering one Navis business surface.

Run with Naftiko NavisVessel Visits

What You Can Do

GET
Listvesselvisits — List vessel visits
/v1/vessel-visits
GET
Getvesselvisit — Get vessel visit details
/v1/vessel-visits/{visitid}
GET
Getvesselvisitunits — Get units for a vessel visit
/v1/vessel-visits/{visitid}/units

MCP Tools

list-vessel-visits

List vessel visits

read-only idempotent
get-vessel-visit-details

Get vessel visit details

read-only idempotent
get-units-vessel-visit

Get units for a vessel visit

read-only idempotent

Capability Spec

n4-vessel-visits.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Navis N4 Terminal Operating System REST API — Vessel Visits
  description: 'Navis N4 Terminal Operating System REST API — Vessel Visits. 3 operations. Lead operation: List vessel visits.
    Self-contained Naftiko capability covering one Navis business surface.'
  tags:
  - Navis
  - Vessel Visits
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    NAVIS_API_KEY: NAVIS_API_KEY
capability:
  consumes:
  - type: http
    namespace: n4-vessel-visits
    baseUri: https://{terminal}.navis.example.com/apex/n4/api/v2
    description: Navis N4 Terminal Operating System REST API — Vessel Visits business capability. Self-contained, no shared
      references.
    resources:
    - name: vessel-visits
      path: /vessel-visits
      operations:
      - name: listvesselvisits
        method: GET
        description: List vessel visits
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: vesselName
          in: query
          type: string
        - name: status
          in: query
          type: string
        - name: arrivalFrom
          in: query
          type: string
        - name: arrivalTo
          in: query
          type: string
        - name: limit
          in: query
          type: integer
    - name: vessel-visits-visitId
      path: /vessel-visits/{visitId}
      operations:
      - name: getvesselvisit
        method: GET
        description: Get vessel visit details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: visitId
          in: path
          type: string
          required: true
    - name: vessel-visits-visitId-units
      path: /vessel-visits/{visitId}/units
      operations:
      - name: getvesselvisitunits
        method: GET
        description: Get units for a vessel visit
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: visitId
          in: path
          type: string
          required: true
        - name: category
          in: query
          type: string
        - name: limit
          in: query
          type: integer
    authentication:
      type: apikey
      key: X-API-Key
      value: '{{env.NAVIS_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: n4-vessel-visits-rest
    port: 8080
    description: REST adapter for Navis N4 Terminal Operating System REST API — Vessel Visits. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/vessel-visits
      name: vessel-visits
      description: REST surface for vessel-visits.
      operations:
      - method: GET
        name: listvesselvisits
        description: List vessel visits
        call: n4-vessel-visits.listvesselvisits
        with:
          vesselName: rest.vesselName
          status: rest.status
          arrivalFrom: rest.arrivalFrom
          arrivalTo: rest.arrivalTo
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/vessel-visits/{visitid}
      name: vessel-visits-visitid
      description: REST surface for vessel-visits-visitId.
      operations:
      - method: GET
        name: getvesselvisit
        description: Get vessel visit details
        call: n4-vessel-visits.getvesselvisit
        with:
          visitId: rest.visitId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/vessel-visits/{visitid}/units
      name: vessel-visits-visitid-units
      description: REST surface for vessel-visits-visitId-units.
      operations:
      - method: GET
        name: getvesselvisitunits
        description: Get units for a vessel visit
        call: n4-vessel-visits.getvesselvisitunits
        with:
          visitId: rest.visitId
          category: rest.category
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: n4-vessel-visits-mcp
    port: 9090
    transport: http
    description: MCP adapter for Navis N4 Terminal Operating System REST API — Vessel Visits. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: list-vessel-visits
      description: List vessel visits
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: n4-vessel-visits.listvesselvisits
      with:
        vesselName: tools.vesselName
        status: tools.status
        arrivalFrom: tools.arrivalFrom
        arrivalTo: tools.arrivalTo
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.
    - name: get-vessel-visit-details
      description: Get vessel visit details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: n4-vessel-visits.getvesselvisit
      with:
        visitId: tools.visitId
      outputParameters:
      - type: object
        mapping: $.
    - name: get-units-vessel-visit
      description: Get units for a vessel visit
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: n4-vessel-visits.getvesselvisitunits
      with:
        visitId: tools.visitId
        category: tools.category
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.